continue

(PHP 4, PHP 5, PHP 7, PHP 8)

continue は、ループ構造において現在の繰り返しループ の残りの処理をスキップし、条件式を評価した後に 次の繰り返しの最初から実行を続けるために使用されます、

注意: PHP では、continue の動作に関しては switch 文がループ構造とみなされます。 continue に引数を渡さなかった場合の動きは break と同じですが、間違いの元なので警告が生成されます。 switch がループ内にある場合、 continue 2 とすると、外側のループの次回の処理から続行します。

continueでは、オプションの引数で 処理をスキップするループ構造のレベルの数を指定できます。 デフォルト値は 1 で、 これは現在のループの終了地点までスキップします。

<?php
foreach ($arr as $key => $value) {
if (!(
$key % 2)) { // キーが偶数の組をスキップします
continue;
}
do_something_odd($value);
}

$i = 0;
while (
$i++ < 5) {
echo
"Outer<br />\n";
while (
1) {
echo
"Middle<br />\n";
while (
1) {
echo
"Inner<br />\n";
continue
3;
}
echo
"This never gets output.<br />\n";
}
echo
"Neither does this.<br />\n";
}
?>

continue の後のセミコロンを省略すると混乱を生じることがあります。 以下の例のようなことをしてはいけません。

<?php
for ($i = 0; $i < 5; ++$i) {
if (
$i == 2)
continue
print
"$i\n";
}
?>

これは、以下のような結果になることを期待していたのでしょう。

0
1
3
4

continue の変更履歴
バージョン 説明
7.3.0 switch 内部で break 文のように振る舞おうとする continue については、E_WARNING が発生するようになりました。