您好,登錄后才能下訂單哦!
小編給大家分享一下PHP中g(shù)oto語句使用案例,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
我們先舉個(gè)簡單示例:
<?php goto LABEL; //這個(gè)標(biāo)簽自定義echo '喬峰'; LABEL:echo '摩智';
以上例程會(huì)輸出:摩智
解釋:
goto 操作符可以用來跳轉(zhuǎn)到程序中的另一位置。該目標(biāo)位置可以用目標(biāo)名稱加上冒號(hào)來標(biāo)記,而跳轉(zhuǎn)指令是 goto 之后接上目標(biāo)位置的標(biāo)記。
PHP 中的 goto 有一定限制,目標(biāo)位置只能位于同一個(gè)文件和作用域,也就是說無法跳出一個(gè)函數(shù)或類方法,也無法跳入到另一個(gè)函數(shù)。
也無法跳入到任何循環(huán)或者 switch 結(jié)構(gòu)中。可以跳出循環(huán)或者 switch,通常的用法是用 goto 代替多層的 break。
我們再看一個(gè)示例:
<?phpfor($i=0, $j=10; $i<20; $i++) { while($j--) { if($j==6) goto end; } }echo"這里不會(huì)被輸出";end:echo "i = $i\n";echo 'stop here';
上面可以看到直接輸出end后面的了,繼續(xù)看:
$number = 1;switch($number){ case 1: goto one; //使用goto跳到one標(biāo)記處 echo "第一名"; //goto已經(jīng)跳轉(zhuǎn),這條語句不執(zhí)行 case 2: goto two; echo "第二名"; case 3: goto three; echo "第三名"; } one:echo " 武林第一!";//exit;two:echo " 武林第二!";//exit;three:echo " 武林第三!";//exit;/* 最終結(jié)果是:武林第一! 武林第二! 武林第三! 注意后面的exit 注釋了,為何不是最終輸出 武林第一,大家可以琢磨下。*/
雖然goto平時(shí)用的不多。但有時(shí)候在特定場景下效率還是很高的。
以上是PHP中g(shù)oto語句使用案例的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。