^ 回到顶部
  • 人生没有定律,每个人都有自己的节奏
  • 本站wordpress建站教程均通过实践后发布,希望对你有帮助,如果有代码出错,请联系站长解决
  • 希望你的坚持,都是因为热爱,而不是因为不甘心
  • 8年wordpress建站经验,5星服务品质
  • 那些不愿意让你吃亏的人,才是真正值得你深交的人,也是值得你付出时间的人
  • 腾讯云3年2核2G新品轻量限时特惠只需408元

零起点php入门第8课-php语言结构(3)

计算机最擅长做的工作就是重复地执行一系列的命令。循环语句就是指定一系列的语句并规定一个条件,让计算机重复执行这些语句直到满足规定的条件为止。PHP 中提供了 for 循环、while 循环和 do…while 循环,下面就来介绍这些知识。

1、for 循环

2 核 2G 限时特惠 396 元/3 年    宝塔建站 10850 大礼包

for 循环使用灵活性比较高,是 PHP 中使用最频繁的循环语句。for 循环的一般形式如下所示:

for (表达式 1; 表达式 2; 表达式 3)
{
语句;
}

表达式 1 通常为赋值语句,用来初始化循环控制变量的初始值;表达式 2 通常为关系表达式或者逻辑表达式,用来确定何时停止循环;表达式 3 通常为递增或者递减表达式,用来对循环控制变量进行修改以逐步不满足表达式 2 的条件,否则就有可能造成无限循环。for 循环条件的流程图如图所示。
零起点php入门第8课-php语言结构(3)

for 循环的执行过程如下:

(1)计算表达式 1 的值,为循环控制变量赋初值,该语句只在循环开始时执行一次;

(2)计算表达式 2 的值,如果其值为 TRUE,则执行循环体语句,否则退出循环;

(3)在每一次执行循环体语句结束后,运行一次表达式 3,以调整循环控制变量。然后返回第 2 步重新计算表达式 2 的值,依次重复,直到表达式 2 的条件不成立为止。

陌小雨给大家一个简单的例子吧:

<?php
	for($i=1;$i<=5;$i++){
		echo "$i<br />";		//循环体
	}
?>

代码运行结果:

1
2
3
4
5

for 循环的灵活之处就表现在它可以有多种形式,下面我们来分别介绍这些形式:

省略表达式 1:这种形式的表达式 1 通常写在 for 循环的外面。这种形式主要用在循环控制变量的初值不是已知常量,而是需要通过前面语句的执行计算得到的情况。

<?php
	$x=10;			//初始化两个变量
	$y=5;
	$z=$x-$y;		//初始化变量
	for(;$z<=5;$z++){		//省略表达式 1 的 for 循环
		echo "$z<br />";
	}
?>

代码运行结果:5

将以上代码中的$y 的值改为 7 后运行。代码运行结果

3
4
5

以上形式就是通过外部的运算来确定表达式 1 的值进而影响到 for 循环的次数。

省略表达式 2:因为表达式 2 默认值为 TRUE,因此这种形式如果在循环体中不加入跳转语句将会是一个无限循环。

省略表达式 3:这种形式的表达式 3 通常写在循环体内,在循环体内改变表达式的值,常用的形式如下所示:

<?php
for($i=0;$i<=100;){			//省略表达式 3
...
$i=$x*3+4;			//在内部修改其值
...
}
?>

上面介绍的是省略 for 循环中表达式的情况。for 循环不仅每个表达式可以为空,它的每个表达式还可以是由多个逗号分隔的表达式构成。

<?php
	for($x=1,$y=2,$z=3;$x<=1,$y<=3,$z<=5;$x++,$y++,$z++){		//多个逗号分隔的表达式
		echo "$x$y$z<br />";		//输出三个变量的值
	}
>

代码运行结果:

123
234
345

从运行结果我们可以得知,程序循环只进行了三次,这是因为在 for 循环中的表达式 2 中,虽然所有用逗号分隔的表达式都会计算,但只取最后一个结果。因此$z 从 3 到 5 只用三次循环即可。

2、while 循环

while 循环与 for 循环相比使用比较简单,它通常用于不确定循环次数的情况,它的一般形式如下所示:

while (表达式)
{
语句;
}

while 循环在开始和每次执行循环体语句后均会判断表达式的值,如果为 TRUE,则执行循环体,如果为 FALSE 则退出 while 循环,它的执行流程图如图所示。

零起点php入门第8课-php语言结构(3)

<?php
	$x=1;			//初始化变量
	while($x<=5){		//执行 while 循环
		echo "$x<br />";
		$x++;
	}
?>

代码运行结果:

1
2
3
4
5

我们使用 while 循环同样实现了输出数值 1~5。这里我们需要明白的一点是通常循环语句间是可以进行转换的。

3、do…while

do…while 循环与 while 类似,它的一般形式如下所示:

do
{
语句;
}
while (表达式)

do…whlie 循环会首先执行循环体中的语句一次然后再去判断表达式中的条件,如果为 TRUE 则继续执行循环体,为 FALSE 则退出循环。也就是说 do…while 循环会保证循环体被执行一次,它执行的流程图如图所示。

零起点php入门第8课-php语言结构(3)

<?php
	$x=10;			//初始化变量 x
	do{
		echo "$x";
	}while($x<5);
?>

代码运行结果:10

在代码中的判断条件虽然为 FALSE,但是循环体语句仍会执行一次,这就是 do…while 循环的特性。

除了以上介绍的三种循环语句之外,PHP 还支持 foreach 循环语句,它是专门用来操作数组的循环语句,因此该循环将在接下来课程数组学习部分进行讲解。

赠人玫瑰,手有余香。