跳至内容

PHP 编程/while 循环

来自 维基教科书,开放的书籍,开放的世界
<?php
$c = 0;
while ($c < 5) {
  echo $c++;
}
?>
<?php
$myName="Fred";
while ($myName!="Rumpel") {
  if ($myName=="Fred") {
    $myName="Leslie";
  } else {
    $myName="Rumpel";
  }
}
echo "How did you know?\n";
?>

这是一个打印从04的数字的示例。 $c 最初为 0。当遇到 while 循环时,表达式$c < 5将被评估为真假。如果为真,它将执行花括号中的内容。 echo 语句将打印0, 然后将 1 加到$c上。然后程序将返回到循环顶部并再次检查表达式。由于它再次为真,它将返回 1 并将 1 加到 $c 上。它将一直这样做,直到$c等于5,此时语句$c < 5将为假。之后,它就结束了。

程序的第一行将$myName设置为 "Fred"。之后,while 语句检查$myName是否等于"Rumpelstiltskin"。在!=中,"不等于" 的意思,所以表达式为真,while 循环执行其代码块。在代码块中,一个if语句(见 上一章)检查它是否等于 Fred。由于它确实等于,它然后重新分配$myName等于"Leslie"。然后它跳过else,因为if为真并被评估。然后它到达循环的末尾,所以它返回并检查$myName是否不等于"Rumpelstiltskin"。由于它仍然不等于,所以它为真,然后它再次进入循环。这次,if 语句为假,所以执行 else。这将$myName设置为 "Rumpelstiltskin"。我们再次到达循环的末尾,所以它返回并检查。由于$myName确实等于"Rumpelstiltskin"while 条件为假,它跳过循环并继续执行,它回显 "你怎么知道的?"

新概念

[编辑 | 编辑源代码]

循环是另一种重要的基本编程技术。循环允许程序重复执行相同的代码行,这对程序中的许多事情都很重要。在 PHP 中,你经常使用它们来在 HTML 中布局表格和其他类似功能。

无限循环

[编辑 | 编辑源代码]

循环非常有用,但也非常危险!无限循环是指无法退出的循环,导致它们一直执行,直到程序停止。这是因为无论循环过程中发生什么,条件都不会变成假,因此永远不会退出。例如,如果示例 1 从$c

$c=2;
while ($c < 5) {
  $c--;
  echo $c;
}

$c 中减去 1,无论如何 $c 始终小于 5,所以循环将永远持续下去。这对那些没有无限时间(或计算机内存!)的人来说会造成问题!所以,在这种情况下,让我们学习一个方便的小工具。

如果你在循环中添加 'break;',无论条件是否为假,循环都将结束。

结束示例

[编辑 | 编辑源代码]

让我们将这两个示例结合起来。在继续之前,花几分钟写出这个程序经历的步骤以及它的输出。

<?php
$c = 1;
$myName="Fred";
while ($myName != "Rumplestilskin") {
  if ($myName=="Fred") {
    $myName="Leslie";
  } else {
    $myName="Marc";
  }

  $c++;

  if ($c==3) {
    break;
  }
};
echo "You lose and I get your baby!\n";
?>

更多信息

[编辑 | 编辑源代码]


华夏公益教科书