PHPのwhile文は、条件式が true である間、繰り返し処理を行う構文です。while文は、複数の処理を繰り返し実行する必要がある場合に便利な構文です。
while文の基本的な書き方
PHP
while (条件式) { // 条件式がtrueの間、繰り返す処理 }
条件式
while文の条件式は、true の場合に繰り返し処理が実行されます。条件式が false の場合、while文の処理は終了します。
処理
while文の処理は、条件式が true である間、繰り返し実行されます。
while文の注意点
- while文の条件式が false になるまで、繰り返し処理が実行されます。そのため、無限ループに陥る可能性があることに注意が必要です。
- while文の処理内で、条件式を変更する処理を行うと、無限ループに陥る可能性があります。
while文の例
以下のコードは、変数 $i の値が 10 未満である間、繰り返し「1からiまでの数を表示する」処理を実行するコードです。
PHP
$i = 1; while ($i < 10) { echo $i . " "; $i++; } このコードでは、条件式 $i < 10 が true である間、繰り返し処理が実行されます。条件式が false になるまで、繰り返し処理は行われ続けます。
while文の例の解説
前述のwhile文の例について、もう少し詳しく解説します。
このコードでは、変数 $i を 1 で初期化しています。
PHP
$i = 1;
次に、条件式 $i < 10 を評価します。
PHP
while ($i < 10) {
条件式が true の場合、繰り返し処理が行われます。繰り返し処理では、変数 $i の値を表示しています。
PHP
echo $i . " "; また、変数 $i の値を 1 増やしています。
PHP
$i++; 最後に、条件式を再度評価し、true の場合、繰り返し処理に戻ります。false の場合、while文の処理は終了します。 このコードでは、条件式 $i < 10 が true である間、繰り返し処理が行われます。そのため、変数 $i の値が 10 になるまで、繰り返し処理は行われ続けます。
while文の使いこなし
while文を使いこなすには、以下の事柄を知っておく必要があります。
- while文の条件式を適切に設定する
while文の条件式が適切に設定されていない場合、無限ループに陥る可能性があります。そのため、while文の条件式は、必ずtrueになる条件を設定するようにしてください。
- while文の処理内で、条件式を変更する処理を慎重に行う
while文の処理内で、条件式を変更する処理を行うと、無限ループに陥る可能性があります。そのため、while文の処理内で条件式を変更する処理を行う場合は、その処理が意図した結果をもたらすかどうかを慎重に検討するようにしてください。
- while文の処理をbreak文で終了させる
while文の処理をbreak文で終了させることで、無限ループを回避することができます。break文は、while文の処理を強制的に終了させる構文です。
初心者へのアドバイス
while文は、複数の処理を繰り返し実行する必要がある場合に便利な構文ですが、使い方を誤ると、意図しない結果になる可能性があります。そのため、まずは基本的な書き方を覚えて、簡単な繰り返し処理を試してみてください。慣れてきたら、while文の条件式や、break文の使い方なども覚えてみてください。