• PHP
  • 常用語法介紹
  • 迴圈
  • import_contacts for 迴圈
    4045
適用範圍

當程式碼需要重覆執行的時候使用,會一直執行到不符合所設定的條件為止

實用性:
重要性:

設定一個變數並給變數初始值,透過運算子去增減,在符合的條件下執行裡面的程式

以下範例設定了一個變數 $i 並給初始值 0,條件為 $i 小於5的時候就執行一次迴圈內容,每執行一次迴圈也就是變數 $i+1 的意思,然後比對條件 $i是否小於5,若是的話則再執行一次迴圈內容…依此類推執行到 $i=5 的時候,迴圈就會跳開不執行裡面的程式。

for ( $i=0 ; $i<5 ; $i++ ) {
 echo $i;
}
//執行完的結果會印出01234

同上範例,本次若給 $i 初始值為5,條件為 $i 必需要大於0,每執行一次就是變數 $i-1的意思。

for ( $i=5 ; $i>0 ; $i-- ) {
 echo $i;
}
//執行完的結果會印出54321

例外狀況需跳出迴圈的處理,使用 break 中斷迴圈的執行

for ( $i=5 ; $i>0 ; $i-- ) {
  echo $i;
  if ($i==3){ break; }
}
//執行完的結果會印出543

需避免造成無限迴圈

for迴圈可以不指定初始值和條件,旦會造成無限迴圈,需在裡面的程式碼中加入判斷式來決定什麼時候跳出迴圈,以下範列皆會印出1~10的數字

//指定初始值,旦不指定條件
for ($i = 1; ; $i++) {
    if ($i > 10) {
        break;
    }
    echo $i;
}

//不指定初始值與條件的情況
$i = 1;
for (; ; ) {
    if ($i > 10) {
        break;
    }
    echo $i;
    $i++;
}

將陣列裡的內容依序印出

使用count來取得陣列的大小,以避免超出陣列的索引值

$arr=array('a','b','c','d');
for ( $i=0 ; $i<count($arr) ; $i++ ) {
 echo $arr[$i];
}
//執行完結果會印出abcd