在PHP 5.4中调用foreach在空的php数组上是否安全?

时间:2012-12-26 21:25:48

标签: php arrays php-5.4

我记得,在做foreach之前我总是要检查count($ array)。 从那时起,我总是做这个双重检查,并且想知道,现在用php 5.4有意义吗?

我已将error_reporting设置为E_ALL并执行以下脚本:

$x = [];

foreach($x as $y) {
    var_dump($y);
}

并没有注意到(因为我记得,以前,也许是php5.3)我得到了通知。

现在在阵列上使用foreach是否安全,那是空的?

1 个答案:

答案 0 :(得分:14)

只要它是一个数组,就不需要检查其中的项目数量。只需确保将其传递给实际的可迭代对象:例如,不要传递随机对象或NULL

但是,foreach([] as $nothing) {}是安全的。