前面給大家講解了PHP控制迴圈語句,知道了,當我們的程式塊滿足一定的條件後才會跳出迴圈,而跳出迴圈則是使用我們的break或者continue關鍵字。本章,將會先給大家講解
“break”跳出迴圈。
在前面的講解PHP迴圈控制語句“while”迴圈的時候,就已經提到過我們的break了,break關鍵字可以終止我們當前的迴圈,包括while,do...while,for,foreach和switch在內的所有控制語句。下面,我們先看一個執行個體。
break跳出迴圈執行個體
本執行個體將使用一個while迴圈,while後面的條件運算式的值為true,是一個無限迴圈。在while程式塊中將聲明一個隨機變數$tmp,只有當產生的隨機數等於10時,會使用break語句跳出迴圈,實現代碼如下:
<?phpheader("Content-type:text/html;charset=utf-8"); //設定編碼while(true){ //使用while迴圈 $tmp=rand(1,20); //說明一個隨機變數$tmp echo $tmp." "; //輸出產生的隨機數 if($tmp==10){ //判斷產生的隨機數是否等於10 echo "<p>變數\$tmp等於10,跳出迴圈</p>"; break; //如果等於10,使用break語句跳出迴圈 }}?>
代碼運行結果如:
我們的break語句不僅可以跳出當前的迴圈,還可以指定跳出幾層迴圈,格式如下:
break $num
參數$num 是指定要跳出幾層迴圈,下面會有例子來說明。
看一下break關鍵字的流程式控制製圖:
指定跳出迴圈層執行個體
本執行個體共有三個迴圈層,最外層的while迴圈和中間的for迴圈是無線迴圈,最裡面有兩個並列的for迴圈:程式首先會先執行第一個for迴圈,當變數$i等於7時,跳出當前迴圈(一重迴圈),繼續執行第二個for迴圈,當第二個for迴圈中的變數$j等於15時,會直接跳出最外層迴圈,代碼如下:
<?phpheader("Content-type:text/html;charset=utf-8"); //設定編碼while(true){ for(;;){ for($i=0;$i<=10;$i++){ echo $i." "; if($i==7){ echo "<p>變數\$i等於7,跳出一層迴圈</p>"; break 1 ; } } for($j=0;$j<=20;$j++){ echo $j." "; if($j==15){ echo "<p>變數\$j等於15,跳出最外層迴圈</p>"; break 3; } } } echo "不會執行這句話";}?>
代碼運行結果如: