PHP- 控制流-循环语句-do...while(一)

2023-04-26 13:49:58 浏览数 (1)

语法

do...while循环的语法如下:

代码语言:javascript复制
do {
  // 循环体
} while (条件表达式);

先执行一次循环体,然后检查条件表达式的值。如果条件表达式的值为true,则继续执行循环体,否则退出循环。和while循环一样,条件表达式可以是任何有效的表达式,通常使用关系运算符(例如<、>、==、!=等)来比较变量的值。

示例

下面是一个示例,使用do...while循环来输出从1到10的所有数字:

代码语言:javascript复制
<?php
$i = 1;

do {
  echo $i . '<br>';
  $i  ;
} while ($i <= 10);
?>

在上面的示例中,我们定义了一个变量$i,并使用do...while循环输出从1到10的所有数字。在循环体内,我们首先打印$i的值,然后将$i的值加1。然后,我们使用条件表达式$i <= 10来检查$i是否小于等于10。如果条件为真,则继续执行循环体,否则退出循环。

请注意,即使$i的值为11,do...while循环也至少会执行一次循环体,因此上面的示例将输出从1到10的所有数字。

break和continue语句

和while循环一样,您也可以在do...while循环中使用break和continue语句。下面是一个示例,使用do...while循环和break语句来查找第一个质数:

代码语言:javascript复制
<?php
$num = 10;

do {
  $num  ;
  for ($i = 2; $i <= sqrt($num); $i  ) {
    if ($num % $i == 0) {
      continue 2;
    }
  }
  break;
} while (true);

echo '第一个质数是' . $num;
?>

在上面的示例中,我们使用do...while循环和break语句查找第一个质数。我们从数字10开始,然后使用for循环遍历从2到当前数字平方根之间的所有数字。如果当前数字可以被其中任何一个数字整除,则使用continue语句跳过当前循环,直接进行下一次循环。如果当前数字不能被其中任何一个数字整除,则使用break语句退出循环,并输出找到的第一个质数。

请注意,在continue语句中,我们使用数字2作为参数,表示跳过当前循环和外部for循环,以便在下一个数字上重新开始循环。如果我们使用数字1作为参数,则只会跳过当前内部循环,继续执行下一个数字的循环。

php

0 人点赞