首页 > PHP 阅读:20

PHP while和do while循环

PHP 循环控制语句用来在满足一定条件的情况下反复执行某一个操作。PHP 中提供了 4 种循环控制语句,分别是 while、do while、for 和 foreach。

本节只讲解 while 和 do while 循环,其它 2 种循环请猛击以下链接学习:

while 循环

PHP while 循环语句语法的格式如下:

while(expr){
    statement
}

当expr的值为true时,就执行嵌套的statement语句,expr表达式的值在每次开始循环时检查,所以即使这个值在循环语句中改变了,语句也不会停止执行,直到本次循环结束。如果while表达式的值一开始就是false,那么循环语句一次都不会执行。示例如下:
<?php
$i = 1;
while($i <= 10){
    echo $i++;
}
?>
执行代码的打印结果是:

12345678910

do while 循环

do while 和 while 都是循环语句,其主要区别是使用 do while 循环的语句,会先执行 do{} 语句块中的代码,再判断 while() 中的条件真假来决定是否继续循环。而 while 循环是先判断循环条件的真假,再决定是否循环执行{}里的代码。因此,do while 循环语句保证会执行一次(表达式的真值在每次循环结束后检查),while循环中就不一定了(表达式真值在循环开始时检查,如果一开始为 false,那么整个循环立即终止)。

PHP do while 语句的语法格式如下:

do {
    statement
} while(expr)

示例如下:
<?php
$i = 0;
do {
    echo $i;
} while ($i >0);
?>
以上循环将正好运行一次,因为经过第一次循环后,检查表达式的真值时,其值为 false($i 不大于 0),导致循环终止。

另一个关于 do while 的示例如下:
<?php
$i = 0;
do {
    $i++;
    echo $i;
} while ($i < 10);
?>
运行结果是:

1234567890