0
$arr = array(1, 2, 3, 4);
foreach ($arr as $value) {
    $i=0;
    if($i==1||$i==2){continue;}
    echo $value;
    $i++;
}

私はPHPの初心者ですが、今はテストを行っていますが、出力2と3ではなくループを終了したいのですが、上記のコードが機能しないのはなぜですか?

4

1 に答える 1

7

$i = 0;これは、各反復で設定するためです(したがって、のチェック$i==1||$i==2は一致しません)。変数の初期化はループの外に出ます:

$arr = array(1, 2, 3, 4);
$i   = 0;
foreach ($arr as $value) {
    if ($i == 1 || $i == 2) {
        continue;
    }
    echo $value;
    $i++;
}
于 2012-08-19T08:56:50.023 に答える