我没有更改php.ini中任何会话的配置选项.
session.save_handler = "files"
session.save_path = ""
session_save_path() = ""
Run Code Online (Sandbox Code Playgroud)
根据我的阅读,如果我将php.ini更改为类似session.save_path ="c:\ tmp \"的内容,则所有会话将作为文件存储在c:\ tmp中.
我的问题是,当我使用默认配置时,如何/在哪里存储会话?
如果你愿意,可以叫我一个巨魔,但我是认真的:新的SOA趋势究竟与我15年前建立的客户服务架构有什么不同?我一直听到SOA,但我不知道它与我们一直以来的不同之处.
回到10年前,我的公司有多个客户(多种语言)与同一服务进行交谈.它不是XML(它是一个名为Microsoft DCOM的二进制协议),并且没有通过WSDL进行自动发现,但这是正常的,因为阅读文档同样容易.我们的系统甚至是"开放的",因为我们记录它足以让第三方与我们的服务交谈.我们不是先锋 - 我10年前所知道的其他公司都在做同样的事情.
我在当时和现在之间看到的唯一区别是现在互联网上有一项服务,而10年前,每个客户都会托管他自己的服务实例.但这不是架构问题 - 物理上的服务对使用该服务的任何人都是透明的.
那么SOA究竟与我们多年来所做的不同呢?SOA只是一个代表最佳实践的营销术语,这个实践在很久以前就已经变得普遍了吗?或者我错过了一些与我们一直在做的不同的SOA?
还行吧:
$foo++ if $condition;
Run Code Online (Sandbox Code Playgroud)
这没关系:
$foo++ for (1..10);
Run Code Online (Sandbox Code Playgroud)
但这不是:
$foo++ if $condition for (1..10);
Run Code Online (Sandbox Code Playgroud)
如果事情并不复杂,我发现后者非常易读,而且它适用于一行!有没有办法做到这一点,还是我应该继续我的生活?
我正在使用Delphi为Excel制作XLL加载项,这涉及对xlcall32.dll的Excel4v函数进行大量调用.但是,我猜这里的Delphi专家很少使用这个特定的API,我希望在其他API中也可以观察到这个问题.
在C中,特别是在Microsoft Excel 2007 XLL SDK附带的xlcall.h文件中,Excel4v定义为:
int pascal Excel4v(int xlfn, LPXLOPER operRes, int count, LPXLOPER opers[]);
Run Code Online (Sandbox Code Playgroud)
在Delphi我正在使用:
function Excel4v(xlfn: Integer; operRes: LPXLOPER; count: Integer;
opers: array of LPXLOPER): Integer; stdcall; external 'xlcall32.dll';
Run Code Online (Sandbox Code Playgroud)
LPXLOPER是指向结构(在C中)或记录(在Delphi中)的指针.
我一直在做我在Delphi中声明C函数的功课(这篇优秀的文章是一个很好的帮助),我想我正在宣布Excel4v.但是,从Delphi代码调用该函数会导致异常("访问违规......"是我一直看到的),除非后面跟着以下行:
asm pop sink; end;
Run Code Online (Sandbox Code Playgroud)
其中"sink"在某处定义为整数.
我对组装没有任何线索......所以我没想办法用"asm pop sink; end;"来修复异常.但是"asm pop sink; end;" 确实修复了异常.我第一次看到它在这篇有用的文章中用于使用Delphi制作XLL.这是最相关的报价:
"来自Delphi,带有加载项的大绊脚石是堆栈上返回地址之后的额外参数.每次调用Excel都可以免费使用.我从来没有发现它拥有什么,但只要你扔掉它,你的加载项工作正常.添加行asm pop变量,结束;在每次调用之后,变量可以是任何至少4个字节长的全局,局部或对象变量 - 整数就好了.要重复 - 这必须是在每次Excel4v通话后都包括在内.否则你正在制造定时炸弹."
基本上我想了解实际发生了什么,以及为什么.什么可能导致Win32函数返回"堆栈上的返回地址后的额外参数",这实际上是什么意思?
可能有另一种方法来解决这个问题,例如使用不同的编译器选项或声明函数的不同方式?
并且有什么风险可以称为"asm pop sink; end;" 每次调用Excel4v后......?它看起来工作正常,但是,由于我不明白发生了什么,感觉有点危险......
CSS中规则的顺序或顺序是否重要?
这篇文章说它很重要:CSS规则的顺序很重要!!!!!!!!!!
我没有在CSS规范中注意到这一点.
如若计算选择的特异性说,当且仅-如果两个规则具有相同的特异性,那么它的两条规则后(即取其规则是以前规则之后定义)是有效的规则?
如果我在我的代码中使用类型为int的BookID,它对应于数据库表中的int主键字段(我正在使用C#和SQL Server)...这是最佳实践,当我' m在我的代码中传递ID,使用可空的int并检查null以查看BookID是否存在:
if (BookID != null) {
Run Code Online (Sandbox Code Playgroud)
或者,分配一个与db中的实际值不对应的整数值(例如0或-1)是更好的做法:
if (BookID > 0) {
Run Code Online (Sandbox Code Playgroud)
编辑:为了进一步说明,假设我只想返回书的ID,而不是整本书对象.在db中,主键是不可为空的,但是如果我要对不存在的'我的书名'的BookID执行查询,那么我将得不到任何结果.这应该反映为null吗?
例:
BookID = GetBookID("my book title");
Run Code Online (Sandbox Code Playgroud) 假设我没有文本索引.我想说:
SELECT * FROM myTable WHERE myTable.columnA LIKE 'bobo'
Run Code Online (Sandbox Code Playgroud)
SQL引擎是否会遍历每一行并且只返回那些匹配的条件,或者SQL是否更智能并且确实做了一些隐藏的本机索引?
我正在使用MSSQL 2000,2005,2008,但如果其他版本的SQL有不同的方法,我会全神贯注.
是否有一个好的在线文档甚至是关于如何执行操作的书籍?
我有10个XLS,每个都包含几百行VBA,它们做同样的事情.我想将这个公共代码移动到第11个XLS,并让其他10个代码在第11个XLS中调用.公共代码必须能够访问调用XLS中的所有数据和工作表.关于这个问题的其他答案似乎没有解决这个最后的要求.我可以将调用XLS的工作表作为参数或类似的东西传递给我吗?
谁知道一个好的解决方案?
到目前为止,我还没有找到比使用文件>新文件然后将内容从旧文件复制到新文件更好的方法.
您可以在Finder中复制并重新导入,但这几乎是相同的工作量:切换到finder,复制,导入新文件.
使用一个类执行此操作并不是很难,但如果需要基于超类生成10个以上类似的类,该怎么办.
在Eclipse中,您选择文件,然后将其复制/粘贴到同一文件夹中.在finder中有重复.
有一个菜单Edit> Duplicate.但它总是被禁用.我尝试选择各种文件,类,方法.它仍然被禁用.
我有一个非常简单的cfform与一个表单字段:
<cfform action="asdf.cfm" method="post">
<cfinput name="fieldName" type="text" size="20" maxlength="20" required="yes" validate="regex" pattern="[A-Za-z]" message="Only characters are allowed." />
<input type="submit" name="btnSubmit" value="check" />
</cfform>
Run Code Online (Sandbox Code Playgroud)
从理论上讲,这将允许任何组合中的AZ和AZ,并且必须包含一些内容.
在实践中,我能够输入'aa'并且javascript验证不会抱怨.由于"空间"字符不在AZ中而不在az中,所以发生了什么?
谢谢!克里斯
architecture ×1
assembly ×1
c ×1
c# ×1
cfform ×1
cfinput ×1
coldfusion ×1
css ×1
delphi ×1
excel ×1
excel-addins ×1
iphone ×1
nullable ×1
objective-c ×1
perl ×1
php ×1
primary-key ×1
regex ×1
session ×1
soa ×1
sql ×1
sql-server ×1
syntax ×1
validation ×1
vba ×1
web-services ×1
winapi ×1
xll ×1