-4

私はこのコードを持っています:

<?php 
$counter = 1;

while ($counter == 5) {
    echo "foo<br />";
    $counter++;
}
?>

私が期待しているのは、 fooを別の行に5回印刷することです。しかし、私が得るのは無限ループです。PHPのwhileループは特別ですか?Pythonで同じようなことをすると、うまくいくからです。

4

3 に答える 3

6

あなたがしたいwhile ($counter <= 5)$counterこれは、「が以下である限り、これをループする」ことを意味します5

$counterあなたが書いた方法は、「等しい限りこれをループする」と言っています5$counterループに到達するのは初めてなので1、ループを完全にスキップします!

于 2012-10-12T05:05:40.677 に答える
3

$counter == 5カウンター値が 5 に達した場合にのみ満足するため、期待どおりに 5 回は印刷されません。したがって、以下のコードを試してください

<?php 
    $counter = 1;

    while ($counter <= 5) {
        echo "foo<br />";
        $counter++;
    }
    ?>

PHP while ループのドキュメント

于 2012-10-12T05:06:10.493 に答える
0

あなたがやろうとしていることは、彼らがそうではない平等をチェックすることです、あなたはこのようにそれをするべきです:-

<?php 
    $counter = 1;

    while ( 5 >= $counter ) {
        echo $counter;
        $counter++;
    }
?>

そして、それは常に良いですが、左側の値と右側の変数、それはいつかあなたを地獄から救うでしょう...!

于 2012-10-12T05:30:57.947 に答える