PHP 手冊
上一頁 | 章 11.控制程式的流程 | 下一頁

# for 迴圈

for 迴圈 可說是 PHP 中最複雜的迴圈類。它們的用法和在 C 中的用法並沒有分別:

    for (expr1; expr2; expr3) statement

首先第一個表達式 (expr1) 無論如何都會演算一次

然後在每個循環開始前 expr2 都會被算出來， 如果得出結果成立的話， 迴圈中的指令便被執行， 如果 expr2 不成立的話， 便會跳出迴圈。

每一個循環完成之後電腦會演算一次 expr3。

三個表達式中任何一個都可以是空的。 expr2 空的話代表迴圈會無止境地執行下去。 (PHP 和 C 一樣， 自動把空的表達式當成是成立的) 這聽上去很無聊， 但實際上你可能想在迴圈中用 break 的方式來結束。

以下每一個例子都會顯示 1 到 10:

`/* example 1 */ for ($i = 1; $i <= 10; $i++) { print $i; } /* example 2 */ for ($i = 1;;$i++) { if ($i > 10) { break; } print $i; } /* example 3 */ $i = 1; for (;;) { if ($i > 10) { break; } print $i; $i++; } /* example 4 */ for ($i = 1; $i <= 10; print $i, $i++) ;`

當然， 在上面的示範中看起來只有第一個 (也許也人喜愛第四個例子) 最正規， 有不過有時候在 for 迴圈 用空的表達式可以令編寫程式變很方便。

for 迴圈 也有它的另一種寫法。

    for (expr1; expr2; expr3): statement; ...; endfor;

有的程式語言有個叫 foreach 的命令來存取陣列和拼雜資料表。 PHP3 沒有這樣指令但 PHP4 有。 (請看 foreach)。用 PHP3 時，你要同時用 while 和list() 以及 each() 函數才能完成相同的工作。 想知道怎麼做的話請看有關這些函數的章節。

上一頁 | 最開頭 | 下一頁
迴圈 | 上一層 | foreach