PHP - Continue 语句



与 break 语句一样,continue 是 PHP 中的另一个“循环控制语句”。与 break 语句不同,continue 语句跳过当前迭代,并在条件评估时继续执行,然后在下一次迭代开始时继续执行。

continue 语句可以在任何类型的循环结构中使用,即 for 循环foreach 循环while 循环或 do-while 循环。与 break 一样,continue 关键字通常也是有条件地使用的。


while(expr){
   if (condition){
      continue;
   }
}

以下流程图说明了 continue 语句的工作原理 -

php continue 语句

示例

下面给出一个简单的示例,显示了 continue 的用法。for 循环预计完成 10 次迭代。但是,只要计数器 ID 能被 2 整除,continue 语句就会跳过迭代。


<?php
   for ($x=1; $x<=10; $x++){
      if ($x%2==0){
         continue;
      }
      echo "x = $x \n";
   }
?>

它将产生以下输出 -

x = 1
x = 3
x = 5
x = 7
x = 9

示例

continue 语句接受一个可选的数字参数,该参数告诉它应该跳到多少级的封闭循环的末尾。默认值为 1。


<?php
   for ($i=1; $i<=3; $i++){
      for ($j=1; $j<=3; $j++){
         for ($k=1; $k<=3; $k++){
            if ($k>1){
               continue 2;
            }
            print "i: $i  j:$j  k: $k\n";
         }
      }
   }
?>

它将产生以下输出 -

i: 1  j:1  k: 1
i: 1  j:2  k: 1
i: 1  j:3  k: 1
i: 2  j:1  k: 1
i: 2  j:2  k: 1
i: 2  j:3  k: 1
i: 3  j:1  k: 1
i: 3  j:2  k: 1
i: 3  j:3  k: 1

内部 for 循环中的 continue 语句跳过迭代 2 和 3,直接跳转到中间循环。因此,对于“i”和“k”变量的所有值,输出显示 “k” 为 1。