|
代碼:
復制代碼 代碼如下:
<?php
$i = 1;
while (true) { // 這里看上去這個循環會一直執行
if ($i==2) {// 2跳過不顯示
$i++;
continue;
} else if ($i==5) {// 但到這里$i=5就跳出循循環了
break;
} else {
echo $i . '<br>';
}
$i++;
}
exit;
echo '這里不輸出';
?>
結果:
1
3
4
continue
continue 是用來用在循環結構中,控制程序放棄本次循環continue語句之后的代碼并轉而進行下一次循環。continue本身并不跳出循環結構,只是放棄這一次循環。如果在非循環結構中(例如if語句中,switch語句中)使用continue,程序將會出錯。
例如在下面的這段php代碼片段中:
復制代碼 代碼如下:
<?php
for($i = 1;$i <= 100; $i++ ){
if($i % 3 == 0 || $i % 7 == 0){
continue;
}
& #160; else{
echo”$i /n<br/>”;
}
}
?>
php的代碼片段的作用是輸出100以內,既不能被7整除又不能被3整除的那些自然數,循環中先用if條件語句判斷那些能被整除的數,然后執行 continue;語句,就直接進入了下個循環。不會執行下面的輸出語句了。
break
break是被用在上面所提的各種循環和switch語句中的。他的作用是跳出當前的語法結構,執行下面的語句。break語句可以帶一個參數n,表示跳出循環的層數,如果要跳出多重循環的話,可以用n來表示跳出的層數,如果不帶參數默認是跳出本重循環。
看下面這個多重循環嵌套的例子:
復制代碼 代碼如下:
for($i = 1;$i <= 10; $i++ ){
for($j = 1;$j <= 10;$j++){
$m = $i * $i + $j * $j;
echo”$m /n<br/>”;
if($m < 90 || $m > 190) {
break 2;
}
}
}
這里使用了break 2跳出了兩重循環,你可以試驗一眼,將2去掉,得到的結果是完全不一樣的。如果不使用參數,跳出的只是本次循環,第一層循環會繼續執行下去。
goto
goto實際上只是一個運算符,和其他語言一樣,php中也不鼓勵濫用goto,濫用goto會導致程序的可讀性嚴重下降。goto的作用是將程序的執行從當前位置跳轉到其他任意位置,goto本身并沒有要結束的循環的作用,但其跳轉位置的作用使得其可以作為跳出循環使用。但php5.3及以上版本停止了對goto的支持,所以應該盡量避免使用goto。
下面的是一個使用了goto跳出循環的例子
復制代碼 代碼如下:
for($i = 1000;$i >= 1 ; $i 主站蜘蛛池模板: 新巴尔虎左旗| 房产| 公主岭市| 息烽县| 丘北县| 石景山区| 蒙山县| 东源县| 聊城市| 综艺| 炎陵县| 安平县| 佛冈县| 兴化市| 浦北县| 闻喜县| 湾仔区| 芜湖市| 孙吴县| 禹州市| 驻马店市| 进贤县| 饶平县| 泌阳县| 武胜县| 新泰市| 包头市| 义乌市| 商洛市| 长顺县| 治县。| 丰原市| 龙泉市| 江安县| 前郭尔| 龙胜| 库尔勒市| 三门县| 镶黄旗| 阳泉市| 丰都县|