break 语句
本课属于 Coddy PHP 学习旅程的“基础知识”单元。第 51 课,共 71 课。
有时,你需要在循环自然结束之前提前退出。break 语句可以帮你做到这一点。它会立即停止循环,并继续运行后面的代码。
想象一下,在数组中查找某个特定值。找到后,就没必要再检查剩余的元素了。使用 break 可以避免不必要的循环。
<?php
$numbers = [3, 7, 2, 9, 5, 1];
foreach ($numbers as $num) {
if ($num === 9) {
echo "Found 9!\n";
break;
}
echo "Checking $num\n";
}
echo "Search complete";
?>输出结果:
Checking 3
Checking 7
Checking 2
Found 9!
Search complete注意,5 和 1 从未被检查。循环一遇到 9,break 就会完全退出循环,执行流程会跳转到“Search complete”。
break 语句适用于所有循环类型:for、while 和 foreach。在查找内容时,或者某个条件要求循环立即停止时,它尤其有用。
挑战
简单读取两行输入:
- 以逗号分隔的数字列表(例如,
4,8,15,16,23,42) - 要搜索的目标数字
使用 foreach 循环在数组中搜索目标数字。找到后,打印 Found [target] at index [index]!,并使用 break 立即退出循环。
如果循环结束时仍未找到目标数字,打印 [target] not found。
提示:在 foreach 循环中使用键值语法来记录索引。
示例 1:
如果输入是 10,25,30,45,50 和 30,输出应为:
Found 30 at index 2!示例 2:
如果输入是 5,10,15,20,25 和 20,输出应为:
Found 20 at index 3!示例 3:
如果输入是 1,2,3,4,5 和 99,输出应为:
99 not found亲手试试
<?php
// 读取输入
$numbers = explode(',', trim(fgets(STDIN)));
$target = trim(fgets(STDIN));
// TODO:在下方编写你的代码
// 使用键值语法的 foreach 循环查找目标值
// 找到时,打印 "Found [target] at index [index]!",然后退出循环
// 如果循环结束后仍未找到,打印 "[target] not found"
?>这节课包含一个小测验。开始学习即可作答,并记录你的进度。
基础知识中的所有课
自己练习: PHP 在线编译器