我有这样的代码:
foreach($attributes as $attrib => $options){
if($bb->$attrib != $default->$attrib){
$delete = false;
}
}
$ bb是一个stdClass,我正在以这种方式读取和写入这些属性,因为我将它们存储在一个数组中。现在这可以在我已经确认的PHP 5.3中运行,我很确定它也适用于5.2,但是在5.1上似乎存在一个问题,你不能以这种方式写入对象,没有错误或任何东西,它只是不会写......
它的版本是什么?
答案 0 :(得分:0)
我相信他指的是使用variable variables,对于PHP< = 5.1,尝试在变量变量周围使用{}。 PHP 5.2+中的iirc是在某些事情发生变化的情况下允许它没有那些。此外,有可能在5.2.x之前不允许这样做,并且没有给出错误,也许错误处理不是一直设置,或仅限于E_ERROR。
foreach($attributes as $attrib => $options){
if($bb->{$attrib} != $default->{$attrib}){
$delete = false;
}
}