Foreach 或 While -- 最适合处理数组


Foreach or While -- Best for processing array?

所以我要做的是处理一个数组。该数组包含一件事:照片网址。

当我使用 foreach() 时,我收到一个限制错误(500 内部错误)。似乎在我重写剧本后就开始发生了。但这没有任何意义,因为脚本中没有错误,而且它以前运行良好。该脚本仍然有效,在弹出错误之前它只能处理大约 30 张照片。是否可以使用 while() 来处理数组?它会出于某种原因摆脱我的 500 错误吗?

感谢您的输入!Brandon

如果您遇到超时(无限循环)错误,while 或 foreach 都不起作用。您最好考虑限制数组的处理量,并逐步完成(分页..?

for ($i = 0; $i < 100; $i++)
{
    //Do your thing. Don't use for each, use $array[$i]
}

如果不是数字,请使用带有两个语句的 while:

while ($test = current($array) && $i < 50)
{
     //xxxx
     next($array);
     $i++;
}

对于每个周期的性能更好。访问这个网站,了解一些 php 基准测试,看看哪个周期更适合您:http://www.phpbench.com/