PHP break和continue语句的用法(附带实例)
在 PHP 的循环语句(for、foreach、while 和 do while)中,可以使用 break 语句终止循环,或使用 continue 语句结束当前循环。
如下面的代码会判断一个正整数是否为质数:
本例中,使用 $isPrime 变量标识是否为质数,首先会假设为质数;在 for 语句结构中,如果数值能够被 2 至数值算术平方根之间的一个数整除,它就不是质数,此时,将 $isPrime 变量设置为 false,并使用 break 语句终止循环。
下面的代码使用 continue 语句模拟计算 1 到 100 偶数之和的功能:
实际上,熟练掌握 for 语句后会使用更简洁的代码来完成这个功能,如下面的代码:
PHP break语句
在 switch 语句结构中,break 语句用于中断每个 case 代码块,以免造成结构贯穿。在循环语句中,break 语句用于终止循环结构。如下面的代码会判断一个正整数是否为质数:
<?php $n = 19; $isPrime = true; $sqr = ceil(sqrt($n)); for ($i = 2; $i <= $sqr; $i++) { if ($n % $i == 0) { $isPrime = false; break; } } var_dump($isPrime); ?>执行代码会显示 bool(true),即 19 是质数,可以修改 $n 的值来观察执行结果。
本例中,使用 $isPrime 变量标识是否为质数,首先会假设为质数;在 for 语句结构中,如果数值能够被 2 至数值算术平方根之间的一个数整除,它就不是质数,此时,将 $isPrime 变量设置为 false,并使用 break 语句终止循环。
PHP continue语句
在循环语句结构中,continue 语句的功能是中止当前循环,并开始执行下一次循环(条件满足时)。下面的代码使用 continue 语句模拟计算 1 到 100 偶数之和的功能:
<?php $sum = 0; for ($i = 1; $i <= 100; $i++) { if ($i % 2 != 0) continue; $sum += $i; } echo $sum; ?>在 for 循环内部,使用 if 语句检查 $i 是否为奇数($i % 2 != 0)。如果是奇数,则使用 continue 语句跳过当前循环的剩余部分,直接进入下一次循环。代码执行会显示 2550。
实际上,熟练掌握 for 语句后会使用更简洁的代码来完成这个功能,如下面的代码:
<?php $sum = 0; for ($i = 2; $i <= 100; $i += 2) { $sum += $i; } echo $sum; ?>这里,只需要将 $i 的初始值指定为 2,然后每次循环后加 2 就可以得到下一个偶数,执行代码同样显示 2550。