continue 语句
本课属于 Coddy PHP 学习旅程的“基础知识”单元。第 52 课,共 71 课。
break 会完全退出循环,但有时你只想跳过当前这次循环,继续下一次循环。这正是 continue 语句的作用。
当 PHP 遇到 continue 时,会立即跳到循环的下一次迭代,跳过当前迭代中剩余的所有代码。
<?php
for ($i = 1; $i <= 5; $i++) {
if ($i === 3) {
continue;
}
echo $i . "\n";
}
?>输出为:
1
2
4
5注意,3 被跳过了。当 $i 等于 3 时,continue 语句会跳过 echo,直接进入下一次循环,此时 $i 变为 4。
一种常见的用法是在处理数组时筛选掉不需要的值:
<?php
$numbers = [10, -5, 8, -3, 12];
foreach ($numbers as $num) {
if ($num < 0) {
continue;
}
echo $num . "\n";
}
?>这里只会打印正数:10、8 和 12。负数会被跳过,但循环仍会遍历所有元素。
关键区别:break 会完全停止循环,而 continue 只会跳到下一次迭代。
挑战
简单读取两行输入:
- 一个以逗号分隔的整数列表(例如,
3,7,12,5,8,20,15) - 一个除数
使用 foreach 循环遍历数组。使用 continue 跳过所有能被给定除数整除的数字。打印其他所有数字,每个数字单独占一行。
示例 1:
如果输入为 1,2,3,4,5,6,7,8,9,10 和 3,输出应为:
1
2
4
5
7
8
10(数字 3、6 和 9 会被跳过,因为它们能被 3 整除)
示例 2:
如果输入为 10,15,20,25,30 和 5,输出应为:
(所有数字都能被 5 整除,因此不会打印任何内容)
示例 3:
如果输入为 7,14,21,10,5 和 7,输出应为:
10
5亲手试试
// TODO: 在下面编写你的代码
// 用 foreach 循环遍历 $numbers
// 用 continue 跳过能被 $divisor 整除的数字
// 输出所有其他数字,每个数字占一行
?>
这节课包含一个小测验。开始学习即可作答,并记录你的进度。
基础知识中的所有课
自己练习: PHP 在线编译器