您正在查看 "Php" 分类下的文章
2009-06-26 10:20
接文章: PHP里使用引用变量时容易犯的错 中的示例
foreach($arr as &$element) {
//modify $element
}
当循环操作完后,你再次调用了某个复制或者函数来保存$arr数组,例如:
set_var("arr", $arr);
这时候你认为被设置的$arr就是你想要的那个 |
2009-06-26 10:09
一个场景:
foreach($arr as &$element) {
//modify $element
}
这种用法是最近常见的,但是这里隐藏一个严重的问题。由于$element变量的作用域是在整个函数(假如这个循环是在某个函数里),如果$element这个变量被foreach这个循环之后的代码再次使用并对其作修改操作时,问题就发生了。因为在循环里$element是个引用变量,如果再对$element赋值那么相当于修改了原有$element所指的内容,例如:
|
2008-08-14 00:04
最近一直在使用CakePHP,感觉挺不错。不过这几天在使用View Cache的时候却发现一个问题:URL带查询参数时总是不命中缓存。查看代码后发现问题所在,原来在View中使用CacheHelper类来处理缓存,每次保存缓存时采用的文件路径是:
$cache = convertSlash($this->here); //这里采用$this->here,$this->here是app/config/routes.php里配置的路径,不带查询参数的。
$cache = $cache . '.php';
return cache('views' . DS . $cache, $ |
2008-06-14 21:08
|
|