PHP のループを学習していましたが、FOR ループを実行したときに、めちゃくちゃになったようです。基本的に、これは起こりました:
for($i = 2; $i++; $i < 26) {
print $i;
}
最後に $i++ を追加して修正しました。しかし、私の質問は次のとおりです。これはバッファ オーバーフローでしたか? 数10000を超えました
PHP のループを学習していましたが、FOR ループを実行したときに、めちゃくちゃになったようです。基本的に、これは起こりました:
for($i = 2; $i++; $i < 26) {
print $i;
}
最後に $i++ を追加して修正しました。しかし、私の質問は次のとおりです。これはバッファ オーバーフローでしたか? 数10000を超えました
いいえ、それは単なる無限ループです。メモリを追加するものは何もないので、オーバーフローするものは何もありません。実行を停止することはありません。それだけです。
間違った方法:
for($i = 2; $i < 26; $i++) {
print $i;
}
PHPfor loop
は次のように動作します。
for(<initialization>; <condition>; <iteration>) {
}
これらのフィールドには何でも入れることができますが、正しく機能させるためには、PHP がフィールドに対して何を行っているかを理解する必要があります。
$i = 2; それが初期化ですincremental variable
。
$i < 26; それが条件で、while $i is less than 26
$i++; 反復。after each turn of the loop, add
$i` に。
この場合、$i が 25 になると、ループが終了します。
そのはず...
for($i = 2; $i < 26; $i++) {
print $i;
}
マニュアルを参照してくださいhttp://php.net/manual/en/control-structures.for.php
無限ループだったと思います。2 番目の位置に置くものは、ループが反復を続けるまでの状態を示します。常に $i を 1 ずつ増やすことができるため、条件は常に真であり、永遠に繰り返すことになります。