对于循环或循环 - 效率

jwe*_*ner 8 performance loops

这可能是一个愚蠢的问题,但是while循环的效率如何与for循环的效率相比较?我一直被教导如果你可以使用for循环,那么我应该.但实际上是什么区别:

$i = 0;
while($i < 100) {
     echo $i;
     $i++;
} 
Run Code Online (Sandbox Code Playgroud)

相比于:

for($i = 0; $i < 100; $i++) {
    echo $i;
}
Run Code Online (Sandbox Code Playgroud)

我知道在这些具体的例子中差异就像.000000001%,但是当我们谈论大型复杂循环时,有什么区别?

Dav*_*har 11

我认为你从你给出的建议中得出了错误的结论.

原因(至少在这种情况下)更喜欢for构造而while不是与效率无关; 这就是编写以清晰易懂的方式表达您的意图的代码.

for初始条件,增量和退出条件放在一个地方,使其更容易理解.该while环路传播他们周围.例如,在您的样本中,i的初始值是多少?哦,你忘了指定它? - 这才是重点.


Bre*_*dan 3

正如您从大多数答案中可以猜到的那样,for 循环相对于 while 循环的主要优点是可读性。for 循环更干净,也更美观。使用 while 循环也更容易陷入无限循环。我想说,我同意你的教导,如果你可以使用 for 循环,你就应该使用,所以只要你坚持下去,你的编程体验将会更加愉快。