PHP中的循環主要使用者執行相同程式碼區塊運行指定的次數。
PHP循環主要有四種:while,do…while,for,foreach。下面我們分開來講解每種迴圈的用法。
while語句:
只要指定的條件成立,則迴圈執行程式碼區塊。
格式:
while(expr)
{
statement;
}
語意:先判斷expr,若表達式expr為假則結束;若表達式expr為真,執行statement語句,執行完畢再判斷expr,若表達式expr仍為真,則繼續執行statement語句;直至表達式expr為假,結束。
例:
上面的範例示範了一個循環,只要變數 i 小於或等於 5,程式碼就會一直循環執行下去。循環每循環一次,變數就會遞增 1,然後輸入i的值;
do…while 語句:
先執行一次程式碼區塊,然後在指定的條件成立時重複這個迴圈.
格式:
do{
statement;
}
while(expr)語意:先執行一次statement語句,然後再判斷expr,如果表達式expr為假則結束;如果表達式expr為真,則繼續迴圈執行statement語句,執行完畢再次判斷expr,若表達式expr仍為真,則繼續執行statement語句;直到表達式expr為假,結束。
注意:他和while的差別在於,do…while第一次不進行任何判斷就執行一次語句,然後再進行判斷條件是否成立,這裡要注意,其他和while是一樣的。
範例:
上面的例子示範了一個循環,我給變數i賦值6,這裡很顯然和while中的條件相比較是不成立的,但結果輸入6,也就是之前說的do…while語句,他第一次沒進行任何判斷,先執行一次,然後再判斷條件是否成立。
for 語句
:如果您已經確定了程式碼區塊的重複執行次數,則可以使用 for 語句。
文法
for (initialization; condition; increment)
{
code to be executed;
}
語意:for 語句有三個參數。第一個參數初始化變量,第二個參數保存條件,第三個參數包含執行循環所需的增量。如果 initialization 或 increment 參數中包含了多個變量,則需要用逗號進行分隔。而條件必須計算為 true 或 false。
範例:
下面的範例會把文字 “Hello World!” 顯示 5 次:
foreach 語句:foreach 語句用於迴圈遍歷陣列。
每進行一次循環,當前數組元素的值就會被賦值給 value 變數(數組指標會逐一移動) – 以此類推。
文法
foreach (array as value)
{
code to be executed;
}
範例
下面的範例示範了一個循環,這個循環可以輸出給定陣列的值:
釋義:首先我定義一個數組arr,然後我使用foreach來循環,其中($arr as $value)的意思是,把$arr數組中的值賦給$value,然後執行語句是輸出$value的值。
輸出的結果為:
one
two
three