我们在上一节讲的是条件控制语句,本节课程我们讲解循环控制语句。循环控制语句中,主要有for循环、while循环、do...while循环和foreach循环。
在编写代码时,经常需要反复运行同一代码块。我们可以使用循环来执行这样的任务,而不是在脚本中添加若干几乎相等的代码行。
1、for循环语句
for循环是一种常见的循环语句,用于指定循环条件和循环体。它包含三个表达式,分别控制循环的初始化、条件和每次迭代后的操作。for循环是PHP的计数循环结构,其语法格式为:
<?php
for(初始表达式;条件表达式;迭代表达式){
语句;
}
?>
其中,初始化表达式在第一次循环时无条件取一次值;条件表达式在每次循环开始前求值,如果值为真,则执行循环体里面的语句。否则,跳出循环,继续往下执行;迭代表达式在每次循环后被执行。for循环语句的流程控制执行图如下:
接下来,我们看一个经典示例:1到100的和,代码如下:
<?php //1-100利用for循环1-100累加
$sum=0;//初始化sum值为0
for($i=1;$i<=100;$i++){//定义i,循环次数,一般求1-100的和,从1开始一直加到100
$sum+=$i;//每次累加传给sum,然后i循环,直道100。
}
echo "1-100之间累加的和为:".$sum;
?>
执行结果为:
1-100之间累加的和为:5050
2、while循环
while循环是PHP中最简单的循环语句,使用while关键字,只要指定的条件为真,就会不断执行循环体。语法格式如下:
<?php
while(条件表达式){
循环语句;
}
?>
当表达式的值为真时,将执行循环体的语句,执行结束以后,再返回到表达式继续继续判断,直到表达式的值为假,才跳出循环。
while循环语句的执行流程控制图如下:
下面,我们也用一个经典案例进行代码示范,输出10以内的偶数,代码如下:
<?php
$num=1; //声明一个整型变量$num
$str="10以内的偶数为:"; //声明一个字符型变量$str
while($num <= 10){ //判断变量是否小于等于10
if($num % 2 == 0){ //判断是否是偶数
$str.=$num." "; //给$sum赋值到$str
}
$num++; //变量$sum加1
}
echo $str; //输出字符串$str
?>
运行结果如下:
10以内的偶数为:2 4 6 8 10
3、do…while循环:
do…while循环先执行一次循环体,然后再判断条件是否为真。如果条件为真,则继续执行循环体,否则循环结束。
while循环和do…while循环的区别在于,do…while循环比while循环多循环一次。当while表达式的值为假时,while循环直接跳出当前循环。而do…while循环语句则是先执行一遍程序块,然后再对表达式进行判断。do…while循环语句控制流程图如下:
通过一个示范代码进行学习,我们输出10(不含)以内的整数。代码如下:
<?php
$i = 0; //声明一个整型变量 $i
do {
echo $i; //输出变量$i
$i++; //变量$i加1
} while ($i < 10); //输出小于10的变量$i
?>
输出结果为:
0123456789
4、foreach循环
foreach循环用于遍历数组或对象的元素。示范代码:
<?php
$array = [1, 2, 3, 4, 5];
foreach ($array as $value) {
echo $value;
}
?>
运行结果为:
12345
到此为止,循环控制语句中的for循环、while循环、do...while循环和foreach循环就讲解完毕。欢迎你学习《PHP8知识详解》系列教程。