我记得,在做foreach之前我总是要检查count($ array)。 从那时起,我总是做这个双重检查,并且想知道,现在用php 5.4有意义吗?
我已将error_reporting设置为E_ALL并执行以下脚本:
$x = [];
foreach($x as $y) {
var_dump($y);
}
并没有注意到(因为我记得,以前,也许是php5.3)我得到了通知。
现在在阵列上使用foreach是否安全,那是空的?
答案 0 :(得分:14)
只要它是一个数组,就不需要检查其中的项目数量。只需确保将其传递给实际的可迭代对象:例如,不要传递随机对象或NULL
。
但是,foreach([] as $nothing) {}
是安全的。