PHP 速習チュートリアル

PHP while ループ

1. PHP while ループの概要

PHP の while ループ は、指定された条件が真(true)である限り、コードブロックを繰り返し実行します。

1.1 シンタックス(Syntax)

while (条件) {
  // 条件が真(true)である限り繰り返し実行されるコード;
}

       Tip: 条件は各イテレーション(反復)の開始時にチェックされます。そのため、最初に条件が偽(false)であった場合、コードブロックは一度も実行されません。

1.2 実装例

変数 $i が 6 未満の間、$i を出力し続ける例です:

$i = 1; // カウンターを初期化

while ($i < 6) { // 条件をチェック
  echo $i; // コードを実行
  $i++; // カウンターをインクリメント(1増やす)
}

注意: カウンター($i)を更新する処理を忘れないでください。これを忘れると、ループが永久に終わらない「無限ループ」に陥ってしまいます。

なお、条件は必ずしもカウンターである必要はありません。演算のステータスや、true/false を評価するあらゆる条件を利用できます。

2. PHP break ステートメント

break ステートメントを使用すると、ループの条件が依然として真(true)であっても、ループを強制的に終了させることができます。

2.1 例:特定の条件でループを脱出する

変数 $i が 3 になった時点でループを停止させます:

$i = 1;

while ($i < 6) {
  if ($i == 3) break;
  echo $i;
  $i++;
}

3. PHP continue ステートメント

continue ステートメントを使用すると、現在のイテレーションをスキップして、直ちに次のイテレーション(ループの先頭)へ進むことができます。

3.1 例:特定の値をスキップする

変数 $i が 3 の場合に処理をスキップし、次の数字へ進みます:

$i = 0;

while ($i < 6) {
  $i++;
  if ($i == 3) continue;
  echo $i;
}

4. 代替構文(Alternative Syntax)

while ループの構文は、波括弧の代わりに :(コロン)と endwhile ステートメントを使用して記述することも可能です。これは HTML 内に PHP を埋め込む際によく利用されます。

4.1 例:endwhile を使用した記述

$i = 1;

while ($i < 6):
  echo $i;
  $i++;
endwhile;

5. ステップ実行(カウンターの増分調整)

while ループで 100 までカウントしたいが、1 ずつではなく 10 ずつ進めたい場合は、各イテレーションでカウンターを 10 ずつ加算します。

5.1 例:10 刻みで 100 までカウントする

$i = 0;

while ($i < 100) {
  $i += 10;
  echo $i . "<br>";
}