PHP基礎(chǔ)之流程控制5——break/continue
(PHP 4, PHP 5)
break?結(jié)束當(dāng)前?for,foreach,while,do-while?或者?switch?結(jié)構(gòu)的執(zhí)行。
break?可以接受一個(gè)可選的數(shù)字參數(shù)來(lái)決定跳出幾重循環(huán)。
<?php $arr = array(’one’, ’two’, ’three’, ’four’, ’stop’, ’five’); while (list (, $val) = each($arr)) {if ($val == ’stop’) { break; /* You could also write ’break 1;’ here. */}echo '$val<br />n'; } /* 使用可選參數(shù) */ $i = 0; while (++$i) {switch ($i) {case 5: echo 'At 5<br />n'; break 1; /* 只退出 switch. */case 10: echo 'At 10; quitting<br />n'; break 2; /* 退出 switch 和 while 循環(huán) */default: break;} }?>continue
(PHP 4, PHP 5)
continue?在循環(huán)結(jié)構(gòu)用用來(lái)跳過(guò)本次循環(huán)中剩余的代碼并在條件求值為真時(shí)開(kāi)始執(zhí)行下一次循環(huán)。
Note:?注意在 PHP 中?switch?語(yǔ)句被認(rèn)為是可以使用?continue?的一種循環(huán)結(jié)構(gòu)。
continue?接受一個(gè)可選的數(shù)字參數(shù)來(lái)決定跳過(guò)幾重循環(huán)到循環(huán)結(jié)尾。默認(rèn)值是?1,即跳到當(dāng)前循環(huán)末尾。
<?php while (list ($key, $value) = each($arr)) {if (!($key % 2)) { // skip odd members continue;}do_something_odd($value); } $i = 0; while ($i++ < 5) {echo 'Outer<br />n';while (1) { echo 'Middle<br />n'; while (1) {echo 'Inner<br />n';continue 3; } echo 'This never gets output.<br />n';}echo 'Neither does this.<br />n'; }?>
省略?continue?后面的分號(hào)會(huì)導(dǎo)致混淆。以下例子示意了不應(yīng)該這樣做。
<?php for ($i = 0; $i < 5; ++$i) {if ($i == 2) continueprint '$in'; }?>
希望得到的結(jié)果是:
0134
可實(shí)際的輸出是:
2
因?yàn)檎麄€(gè)?continue print '$in';?被當(dāng)做單一的表達(dá)式而求值,所以?print?函數(shù)只有在?$i == 2?為真時(shí)才被調(diào)用(print?的值被當(dāng)成了上述的可選數(shù)字參數(shù)而傳遞給了continue)。
相關(guān)文章:
1. Jsp中request的3個(gè)基礎(chǔ)實(shí)踐2. 如何在jsp界面中插入圖片3. 解析原生JS getComputedStyle4. 淺談SpringMVC jsp前臺(tái)獲取參數(shù)的方式 EL表達(dá)式5. CSS3實(shí)例分享之多重背景的實(shí)現(xiàn)(Multiple backgrounds)6. ASP 連接Access數(shù)據(jù)庫(kù)的登陸系統(tǒng)7. .NET使用YARP通過(guò)編碼方式配置域名轉(zhuǎn)發(fā)實(shí)現(xiàn)反向代理8. jsp EL表達(dá)式詳解9. PHP循環(huán)與分支知識(shí)點(diǎn)梳理10. PHP設(shè)計(jì)模式中工廠模式深入詳解
