一尘不染

for循环vs while循环vs foreach循环PHP

php

我第一次不了解PHP。我一直在脚本中使用for循环,while循环,foreach循环。我想知道

  • 哪一个性能更好?
  • 选择循环的标准是什么?
  • 当我们在另一个循环中循环时应该使用哪个?

我一直想知道要使用哪个循环的代码。

for($i=0;$i<count($all);$i++)
{
 //do some tasks here
 for($j=0;$j<count($rows);$j++)
 {
  //do some other tasks here 
 }
}

很明显,我可以使用while编写上面的代码。希望有人能帮助我找出哪个循环更适合使用。


阅读 355

收藏
2020-05-29

共1个答案

一尘不染

哪一个性能更好?

没关系

选择循环的标准是什么?

如果只需要遍历对象或数组的所有元素,请使用foreach。您 需要的情况 for包括

  • 当您明确需要使用数字索引执行操作时,例如:
  • 当您需要在迭代中使用上一个或下一个元素时
  • 当您需要在迭代期间更改计数器时

foreach更加方便,因为它不需要您设置计数,并且可以通过任何类型的成员进行操作-
无论是对象属性还是关联数组元素(for不会捕获)。通常最好是为了提高可读性。

当我们在另一个循环中循环时应该使用哪个?

两者都很好;在您的演示案例中,这foreach是最简单的方法。

2020-05-29