有人能告诉我为什么我的第二个回声产生-1?据我所知,循环在$ x> = 0时停止exectue ...所以为什么第二个回声说-1来自lool的地方:
for ($x=5; $x>=0;--$x) {
//echo inside loop
echo $x . "<br>";
}
//echo outside loop
echo $x;
这会产生: 五 4 3 2 1 0 -1&lt; ----我确定这条线不应该在那里,不应该说0吗?
答案 0 :(得分:0)
直到$ x&gt; = 0的圆圈。“最后”圆圈$ x是&lt; 0等等从FOR退出。 出于这个原因,$ x在cicle FOR中是-1。
-1值是FOR结束的原因。
答案 1 :(得分:0)
因为循环减少x超过0.当它知道停止时。它永远不会在循环中评估小于零,但在最后一次迭代之后,它比限制小一个。
答案 2 :(得分:0)
我在我的问题中的假设是错误的,当它是$ x&gt; = 0时循环没有停止执行,它在$ x&gt; = - 1时停止执行,这被评估为false,这就是循环外的回声返回循环停止迭代时评估为false的值