PHP流程控制之goto語法

自 PHP 5.3.0 起,也可以使用 goto 來跳出迴圈。

在本章開始的章節,我們講解到一個故事,王同學每週往返,但有一個特例:

專案失敗後或集團臨時除知除外,他就可以不再這麼每週往返了。

基本語法

<?php
goto wan;
echo '天王盖地虎';

wan:
echo '小鸡炖蘑菇';
?>

透過上例,我們發現直接顯示輸出了:小雞燉蘑菇。

我們來實現一下霸道王總裁的程式碼:

<?php
for($i=0; $i<100; $i++) {
    echo '第'. $i .'周往返北京大连<br />';
    if($i == 17){
            goto end; 
     }
}

end:
echo '集团公司要求停止此项';
?>

這個知識點為了解級別,大家不想學習,可以不用學習此區塊。


附註:
goto 運算子可以用來跳到程式中的另一個位置。
此目標位置可以用目標名稱加上冒號來標記,而跳轉指令是 goto 之後接上目標位置的標記。
PHP 中的 goto 有一定限制,目標位置只能位於同一個檔案和作用域,也就是說無法跳出一個函數或類別方法,也無法跳入另一個函數。也無法跳入任何循環或 switch 結構中。可以跳出迴圈或 switch,通常的用法是用 goto 取代多層的 break。

繼續學習
||
<?php for($i=0; $i<100; $i++) { echo '第'. $i .'周往返北京大连<br />'; if($i == 17){ goto end; } } end: echo '集团公司要求停止此项'; ?>