购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

4.4 循环语句

循环语句,又称为迭代语句,是指在满足一定的条件下,重复执行相同代码的语句结构。PHP中的循环语句结构包括:

● for

● foreach

● while

● do…while

在这些语句结构中,还可以使用break语句终止循环,或使用continue语句结束当前循环。

4.4.1 for语句

for循环语句用于已知循环执行次数的情况,例如,计算1到100的累加、通过数值索引访问数组成员等。

for语句应用格式如下:

下面是计算1到100累加的代码。

代码执行结果会显示5050。

4.4.2 foreach语句

foreach适合于遍历集合,先通过两个简单的例子熟悉foreach语句结构的应用,在讨论数组时还会有大量的应用示例。

首先,可以使用foreach语句结构访问数组成员的值,如下面的代码。

foreach关键字后的一对圆括号中,as关键字左侧为数组对象,右侧是表示数组成员值的变量,代码执行结果见图4-5。

图 4-5

需要同时访问数组的键(整数索引或数据名称)和值时,在as关键字后使用=>运算符,运算符左侧指定包含“键”的变量,右侧指定包含“值”的变量,如下面的代码。

代码执行结果见图4-6。

图 4-6

稍后会详细讨论数组的应用。

4.4.3 while语句

while语句的应用格式如下:

当<条件>成立(true)时,执行<语句块>,<条件>不成立时结束while语句结构。需要注意的是,在<语句块>中应该有改变<条件>的代码,否则就会无限循环,也称为“死循环”。

下面的代码使用while语句结构计算1到100的和。

代码执行结果显示5050。

4.4.4 do…while语句

do…while语句与while语句结构执行的逻辑相似,只是将判断循环条件的操作放在每次执行循环之后,格式如下。

下面的代码使用do…while语句结构计算1到100的和。

4.4.5 break语句

在switch语句结构中,break语句用于中断每个case代码块,以免造成结构贯穿。循环语句中,break语句用于终止循环结构。如下面的代码会判断一个正整数是否为质数。

执行代码会显示bool(true),即19是质数,可以修改$n的值来观察执行结果。

本例中,使用$isPrime变量标识是否为质数,首先会假设为质数;在for语句结构中,如果数值能够被2至数值算术平方根之间的一个数整除,它就不是质数,此时,将$isPrime变量设置为false,并使用break语句终止循环。

4.4.6 continue语句

在循环语句结构中,continue语句的功能是中止当前循环,并开始执行下一次循环(条件满足时)。

下面的代码使用continue语句模拟计算1到100偶数之和的功能。

代码执行会显示2550。实际上,熟练掌握for语句后会使用更简洁的代码来完成这个功能,如下面的代码。

这里,只需要将$i的初始值指定为2,然后每次循环后加2就可以得到下一个偶数,执行代码同样显示2550。 /jxHhq0VUBaBDMBbpdtvJiUMbRSHvNSnFWnW9el09ZFPbQxlTIuVYYyAFOY6/Dfc

点击中间区域
呼出菜单
上一章
目录
下一章
×