PHP 的两大循环分别是 PHP for 循环与 while 循环,当你有重复性值的程式码而且要执行很多次,就可以使用循环来处理,循环的好处是可以省去重复写程式码的工作,且管理起来比较容易,PHP while 循环的使用基本观念是当条件符合,while 就会一直执行,直到不符合条件或者是跳出 while 循环(使用 break)的时候就会停止,可以自由控制要执行的次数。
PHP while 的条件判断式可以为大小比对或是运算式,但要注意判断式的条件要有限度,例如 1==1 这样永远都成立的情况,就会变成无限循环,while loop 成为无限循环会跑不停而造成系统当机唷!(如果 server 有设定安全范围则有可能会执行到后来停止)
前面有介绍到 while loop 的条件判断式可以写成运算式,也就是每跑一次循环就先计算一次结果,如果计算结果符合条件,就会再度执行循环,一直到计算结果不符合条件为止,马上来看个进化版的范例。
我们在这个 while 的条件式中加入了每次执行循环变数 $i 都 +1 再做条件判断,输出结果变成“0-1-2-3-4-5-6-7-8-”这样的结果,不难发现输出结果只到 8 而已,因为变数 $i 在 $i++ 的时候加到 9,本来应该会输出,但回到 while 的条件判断中, $+1 的运算结果变成 10,所以循环就不会继续执行啰!在 while 循环中执行运算似乎很方便,但不建议当循环要执行的数量很庞大时使用。