PHP 中的 continue 语句让程序在循环中跳过当前迭代的代码块。每当条件满足时,Continue 语句就会将程序带到循环的开头。
当在嵌套循环(循环内循环)中使用 continue 语句时,它将跳过最内层循环的代码块,如下所示条件满足。
使用While循环continue语句
在下面的示例中,如果变量j 变为 4。
<?php
$j = 0;
while ($j < 6){
$j++;
if($j == 4){
echo "本次迭代被跳过.\n";
continue;
}
echo $j."\n";
}
?>
上述代码的输出将是:
1
2
3
本次迭代被跳过.
5
6
Continue 语句与 For 循环
在下面的示例中,使用了 continue 语句如果变量i的值变为4,则跳过for循环。
<?php
for ($i = 1; $i <= 6; $i++){
if($i == 4 ){
echo "本次迭代被跳过.\n";
continue;
}
echo $i."\n";
}
?>
上述代码的输出将是:
1
2
3
本次迭代被跳过.
5
6
Continue 语句和嵌套循环
只要满足条件,Continue 语句就会跳过内部循环的代码块。在下面提到的示例中,程序仅当 j = 100 时才跳过内循环。
<?php
//不带 continue 语句的嵌套循环
echo "# 没有 continue 语句的嵌套循环\n";
for ($i = 1; $i <= 3; $i++){
for ($j = 10; $j <= 1000; $j = $j * 10){
echo $i*$j."\n";
}
}
?>
上述代码的输出将是:
# 没有 continue 语句的嵌套循环
10
100
1000
20
200
2000
30
300
3000
再看带有 continue 语句的嵌套循环<?php
//带有 continue 语句的嵌套循环
echo "# 带有 continue 语句的嵌套循环\n";
for ($i = 1; $i <= 3; $i++){
for ($j = 10; $j <= 1000; $j = $j * 10){
if($j == 100) {
continue;
}
echo $i*$j."\n";
}
}
?>
上面的代码将是:
# 带有 continue 语句的嵌套循环
10
1000
20
2000
30
3000