PHP循环通过一个绝对空的数组

时间:2013-12-11 21:16:18

标签: php arrays foreach

我们使用始终返回数组的模型。它永远不会返回一个对象,null,0,false或其他东西。现在,我发现了一个致命的错误。 PHP循环遍历一个空数组。怎么可能?

var_dump($arrProduct); //prints array > empty
foreach($arrProduct as $Product){
    var_dump($Product); //null
    $name = $Product->getTitle(); //my Exception

}

转换为数组无济于事。我不测试数组是否包含值,因为这个模型用于几百行。

这可能是PHP设置问题还是缓存问题?

2 个答案:

答案 0 :(得分:0)

解决方案来了:原因:

有一个semikolon和foreach之后的行尾

foreach($arrProduct as $Product){                                             ;

没有人注意到它:-)

有趣的是,这是完全有效的代码。

答案 1 :(得分:-1)

if ($arrProduct && is_array($arrProduct)) {
    foreach($arrProduct as $Product){
        var_dump($Product); //null
        $name = $Product->getTitle(); //my Exception
    }
}