例
代碼如下 |
複製代碼 |
$array = array(1,2,3,4,5,6); for($i=0;$i<10;$i++){ foreach($array as $key) { echo $key; if($key==2){ break 2; } } } |
例
代碼如下 |
複製代碼 |
<?php //設定編碼為UTF-8,以避免中文亂碼 header('Content-Type:text/html;charset=utf-8'); //執行嵌套迴圈,外層迴圈3次,內層迴圈2次。當執行到第2次外層迴圈時,使用break跳出,不執行其內層迴圈。 for ($i = 0; $i < 3; $i++){ echo '外層迴圈'.$i.' 開始<br/>'; for ($j = 0; $j < 2; $j++){ if ($i == 1){ break; } echo '內層迴圈'.$i.'-'.$j.'<br/>'; } echo '外層迴圈'.$i.' 結束<br/><br/>'; } ?> |
上述代碼的輸出頁面結果如下:
外層迴圈0 開始
內層迴圈0-0
內層迴圈0-1
外層迴圈0 結束
外層迴圈1 開始
外層迴圈1 結束
外層迴圈2 開始
內層迴圈2-0
內層迴圈2-1
外層迴圈2 結束
上面的代碼很容易理解,break用於跳出當前層次的迴圈。不過,與Java等程式設計語言不同的是,在PHP中,我們還可以在關鍵字break後跟上一個數字,該數字表示需要跳出的迴圈層數,這樣可以使用一個break語句,直接跳出多重迴圈。例如:
代碼如下 |
複製代碼 |
<?php //設定編碼為UTF-8,以避免中文亂碼 header('Content-Type:text/html;charset=utf-8'); //執行嵌套迴圈,外層迴圈3次,內層迴圈2次。當執行到第2次外層迴圈時,使用break 2跳出,直接跳出2層迴圈 for ($i = 0; $i < 3; $i++){ echo '外層迴圈'.$i.' 開始<br/>'; for ($j = 0; $j < 2; $j++){ if ($i == 1){ break 2; //使用break 2直接跳出2層迴圈 } echo '內層迴圈'.$i.'-'.$j.'<br/>'; } echo '外層迴圈'.$i.' 結束<br/><br/>'; } ?> |
上述範例程式碼輸出的頁面結果如下:
外層迴圈0 開始
內層迴圈0-0
內層迴圈0-1
外層迴圈0 結束
外層迴圈1 開始
因此,在PHP中,我們可以使用break後跟上指定的數字,來直接跳出指定層數的迴圈。
注意:break後跟的數字,只能為正整數,並且不能超過實際可以跳出的迴圈層數。否則會報致命錯誤(Fatal Error)。