迴圈
do.while 迴圈 和 while 迴圈差不多,但它到最後才檢查執行條件是否成立。 這樣保證了 do.while 中的指令起碼會被執行一次。 由於 while 是在一開頭便檢查條件, 所以用 while 的話可能一次循環也執行不了。
do.while 迴圈 只有一個句法, 沒有別的等效寫法 :
$i = 0;
do {
print $i;
} while ($i>0);
上面的程式只會跑一次, 因為指令執行完了才檢查條件才發現原來條件不成立於是跳出迴圈。
用 C 編程的高手可能懂得另一種 do.while 迴圈 的用法: 用 break 指令和 do.while(0) 迴圈來使程式在執行中途終止。下列程式段示範這一個用法:
do {
if ($i < 5) {
print "i is not big enough";
break;
}
$i *= $factor;
if ($i < $minimum_limit) {
break;
}
print "i is ok";
...process i...
} while(0);
縱使你看不出上面程式有什麼奧妙也沒關係。 就算不用 do.while 的這個特性也一樣可以寫出功能很強的程式。