小编sab*_*bas的帖子

为什么带有空字符串的数组上的array_shift会破坏循环?

我只是注意到,当遇到空字符串时,使用while和array_shift迭代数组的行为与简单的for循环不同.这是一个示例:

循环:

$arr=[1, "",1,""];
while ($elm = array_shift($arr))
{
    var_dump($elm);
}
Run Code Online (Sandbox Code Playgroud)

对于循环:

$arr=[1, "",1,""];
for ($i = 0; $i<count($arr); $i++)
{
    var_dump($arr[$i]);
}
die();
Run Code Online (Sandbox Code Playgroud)

为什么while退出循环?

php loops for-loop while-loop

1
推荐指数
1
解决办法
115
查看次数

标签 统计

for-loop ×1

loops ×1

php ×1

while-loop ×1