php--中断/続行

伊谢尔伦
伊谢尔伦オリジナル
2016-11-24 09:19:08967ブラウズ

break

(PHP 4, PHP 5)

break は、現在の for、foreach、while、do-while、または switch 構造の実行を終了します。

break は、抜け出すループの数を決定するオプションの数値パラメーターを受け入れることができます。

<?php
    $arr = array(&#39;one&#39;, &#39;two&#39;, &#39;three&#39;, &#39;four&#39;, &#39;stop&#39;, &#39;five&#39;);
    while (list (, $val) = each($arr)) {
        if ($val == &#39;stop&#39;) {
            break; /* You could also write &#39;break 1;&#39; here. */
        }
        echo "$val<br />\n";
    }
    /* 使用可选参数 */
    $i = 0;
    while (++$i) {
        switch ($i) {
        case 5:
            echo "At 5<br />\n";
            break 1; /* 只退出 switch. */
        case 10:
            echo "At 10; quitting<br />\n";
            break 2; /* 退出 switch 和 while 循环 */
        default:
            break;
        }
    }
?>

continue

(PHP 4, PHP 5)

continue は、ループ構造で使用され、このループ内の残りのコードをスキップし、条件が true と評価されたときに次のループの実行を開始します。

注: PHP では、switch ステートメントは continue を使用できるループ構造とみなされます。

continue は、ループの最後までスキップするループの数を決定するオプションの数値パラメーターを受け入れます。デフォルト値は 1 で、現在のループの最後にジャンプします。

<?php
    while (list ($key, $value) = each($arr)) {
        if (!($key % 2)) { // skip odd members
            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

しかし、実際の出力は次のようになります:

2

continue print "$in" 全体が単一の式として評価されるため、print 関数は $i == 2 の場合にのみ機能します。 true の場合にのみ呼び出されます (前述のオプションの数値パラメーターとして続行するために print の値が渡されます)。


声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。