PHP - break 语句



PHP 中的 break 语句与 continue 语句一起被称为“循环控制语句”。PHP 中的任何类型的循环(forwhiledo-while)都设计为根据所使用的测试条件运行一定数量的迭代。循环块内的 break 语句将程序流程带到循环块之外,放弃可能剩余的其余迭代。

break 语句通常有条件地使用。否则,循环将在未完成第一次迭代的情况下终止。

break 语句的语法如下:

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

以下流程图解释了break 语句的工作方式:

PHP Break Statement

示例

以下 PHP 代码是循环中使用 break 的简单示例。while 循环预计执行十次迭代。但是,循环内的 break 语句在计数器超过 3 时终止循环。

<?php
   $i = 1;

   while ($i<=10){
      echo "Iteration No. $i \n";
      if ($i>=3){
         break;
      }
      $i++;
   }
?>

它将产生以下输出

Iteration No. 1
Iteration No. 2
Iteration No. 3

可以在 break 关键字前面添加一个可选的数字参数。这在嵌套循环结构中特别有用。它指示要跳出多少个嵌套的封闭结构。默认值为 1,只跳出直接封闭的结构。

示例

下面的示例包含三个嵌套循环:一个 for 循环,其中包含一个 while 循环,而 while 循环又包含一个 do-while 循环。

最内层循环执行 break。它前面的数字“2”将控制权从当前作用域带到 for 循环,而不是直接的 while 循环。

<?php
   for ($x=1; $x<=3; $x++){
      $y=1;
      while ($y<=3){
         $z=1;
         do {
            echo "x:$x y:$y z:$z \n";
            if ($z==2){
               break 2;
            }
            $z++;
         }
         while ($z<=3);
         $z=1;
         $y++;
      }
   }
?>

它将产生以下输出

x:1 y:1 z:1
x:1 y:1 z:2
x:2 y:1 z:1
x:2 y:1 z:2
x:3 y:1 z:1
x:3 y:1 z:2

请注意,每次“z”的值变为 2 时,程序都会跳出“y”循环。因此,“y”的值始终为 1。

广告
© . All rights reserved.