Php 简明教程

PHP - Continue Statement

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

continue 语句可以在任何类型的循环构造中使用,即 for, foreach, whiledo-while 循环。与 break 类似, continue 关键字通常也以条件方式使用。

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

以下 flowchart 解释了 continue 语句的工作原理 −

php continue statement

Example

以下是一个简单的示例,演示 continue 的用法。预计 for 循环将完成十次迭代。然而,每当计数器 id 为偶数时, continue 语句都会跳过迭代。

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

它将生成以下 output

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

Example

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";
         }
      }
   }
?>

它将生成以下 output

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,并直接跳转到中间循环。因此,输出显示“k”对于“i”和“k”变量的所有值都是 1。