continue
(PHP 4, PHP 5, PHP 7, PHP 8)
continue
は、ループ構造において現在の繰り返しループ
の残りの処理をスキップし、条件式を評価した後に
次の繰り返しの最初から実行を続けるために使用されます、
注意:
PHP では、
continue
の動作に関しては switch 文がループ構造とみなされます。continue
に引数を渡さなかった場合の動きはbreak
と同じですが、間違いの元なので警告が生成されます。switch
がループ内にある場合、continue 2
とすると、外側のループの次回の処理から続行します。
continue
では、オプションの引数で
処理をスキップするループ構造のレベルの数を指定できます。
デフォルト値は 1
で、
これは現在のループの終了地点までスキップします。
<?phpforeach ($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
の後のセミコロンを省略すると混乱を生じることがあります。
以下の例のようなことをしてはいけません。
<?phpfor ($i = 0; $i < 5; ++$i) { if ($i == 2) continue print "$i\n";}?>
これは、以下のような結果になることを期待していたのでしょう。
0 1 3 4
バージョン | 説明 |
---|---|
7.3.0 | switch 内部で break
文のように振る舞おうとする |