哪个更快,在PHP中使用更少的资源?

时间:2010-12-27 07:57:16

标签: php foreach while-loop performance

  

可能重复:
  for vs foreach vs while which is faster for iterating through arrays in php

For eachwhile,其中哪些更快,推荐,以及它们的资源使用情况如何?

3 个答案:

答案 0 :(得分:2)

foreach针对集合的迭代进行了优化。当你将它与数组一起使用时(以及PHP5中的对象),这是一种花哨的方式,它说它最好(也是最快)。您可以使用while()获得与foreach相同的效果,但效率不高,因为您需要在list()循环内调用while

使用foreach($array as $key => $value)撰写的

whilewhile(list($key,$value) = each($array))。您可以看到所需的额外呼叫数量。

答案 1 :(得分:1)

我认为他们应该有相同的速度。 我更喜欢foreach,因为它更安全。

答案 2 :(得分:1)

这可能取决于您如何准确使用它们。您可以选择通过引用传递数组foreach循环。在这种情况下,将不会制作整个阵列的副本。像这样的优化可能比在foreachwhile之间选择更有效。