私はこのコードを持っています:
<?php
$counter = 1;
while ($counter == 5) {
echo "foo<br />";
$counter++;
}
?>
私が期待しているのは、 fooを別の行に5回印刷することです。しかし、私が得るのは無限ループです。PHPのwhileループは特別ですか?Pythonで同じようなことをすると、うまくいくからです。
私はこのコードを持っています:
<?php
$counter = 1;
while ($counter == 5) {
echo "foo<br />";
$counter++;
}
?>
私が期待しているのは、 fooを別の行に5回印刷することです。しかし、私が得るのは無限ループです。PHPのwhileループは特別ですか?Pythonで同じようなことをすると、うまくいくからです。
あなたがしたいwhile ($counter <= 5)
。$counter
これは、「が以下である限り、これをループする」ことを意味します5
。
$counter
あなたが書いた方法は、「等しい限りこれをループする」と言っています5
。$counter
ループに到達するのは初めてなので1
、ループを完全にスキップします!
$counter == 5
カウンター値が 5 に達した場合にのみ満足するため、期待どおりに 5 回は印刷されません。したがって、以下のコードを試してください
<?php
$counter = 1;
while ($counter <= 5) {
echo "foo<br />";
$counter++;
}
?>
PHP while ループのドキュメント
あなたがやろうとしていることは、彼らがそうではない平等をチェックすることです、あなたはこのようにそれをするべきです:-
<?php
$counter = 1;
while ( 5 >= $counter ) {
echo $counter;
$counter++;
}
?>
そして、それは常に良いですが、左側の値と右側の変数、それはいつかあなたを地獄から救うでしょう...!