PHPにおけるbreak命令
例えば、配列の要素を画面に表示する 以下のようなループがあるとします:
<?php
$arr = [1, 2, 3, 4, 5];
foreach ($arr as $elem) {
echo $elem;
}
?>
ここで、配列内に数字3が存在するかどうかを
判定するタスクがあるとします。存在する場合は
画面に'+++'を表示します(存在しない場合は
何もしません)。
このタスクを解決してみましょう:
<?php
$arr = [1, 2, 3, 4, 5];
foreach ($arr as $elem) {
if ($elem == 3) {
echo '+++';
}
}
?>
タスクは解決されましたが、問題があります:
数字3が見つかった後も、配列の不要な
走査が無意味に続き、貴重なCPUリソースを消費し、
スクリプトの動作を遅くしています。
数字を見つけた直後にループの処理を終了する方が
効率的です。これは、ループを早期終了させるための
特別な命令breakを使用して行うことができます。
それでは、数字3に遭遇したらすぐに
ループを終了させましょう:
<?php
$arr = [1, 2, 3, 4, 5];
foreach ($arr as $elem) {
if ($elem == 3) {
echo '+++';
break; // ループから抜けます
}
}
?>
break命令は、あらゆる種類のループを終了させることができます:
foreach、for、while。
数値の配列が与えられます。値0の要素に
遭遇するまで、この配列の要素を順番にコンソールへ
出力するループを実行してください。その後、
ループはその処理を終了する必要があります。
数値の配列が与えられます。配列の先頭から最初の 負の数までにある要素の合計を求めてください。
数値の配列が与えられます。この配列内における最初の
数字3の位置を見つけてください(この数字は
配列内に必ず存在するものとします)。
数字1から始めて、合計が100を超えるために
必要な整数の数を求めてください。