まえがき
PHPプログラミングにおいて、do-whileループは少なくとも一度はコードブロックを実行し、その後指定された条件が真の間繰り返し実行されるループです。
この記事では、do-whileループの基本的な使い方といくつかの一般的な使用例を紹介します。
サンプルコードはPHP Playground で実行できます。
do-whileループの基本
PHPのdo-whileループは、まずコードブロックを実行し、その後条件を評価します。
基本的な構文は以下の通りです:
do {
// 最初に実行されるコード
} while (条件);
例:単純なdo-whileループ
カウンターを使ったループ
<?php
$count = 1;
do {
echo "カウント: $count<br>";
$count++;
} while ($count <= 5);
カウント: 1<br>カウント: 2<br>カウント: 3<br>カウント: 4<br>カウント: 5<br>
このコードは、カウンターが5に達するまで数を表示します。
do-whileループの適切な使用
do-whileループは、ループの条件をチェックする前に最低一度はコードを実行したい場合に適しています。
例:ユーザー入力の処理
以下は、ランダムな数値を生成し、特定の条件を満たすまで処理を繰り返す例です。この例では、ランダムに生成された数値が50以上になるまでループを実行します。
do-while文は、ループ内の処理を少なくとも一度は必ず実行し、その結果に応じて継続・終了を判断する場合に適しています。
<?php
do {
// 1から100までのランダムな数値を生成
$number = mt_rand(1, 100);
echo "生成された数値: $number<br>";
// 条件:生成された数値が50未満の場合、ループを続行
} while ($number < 50);
echo "ループ終了:生成された数値が50以上になりました。";
生成された数値: 67<br>ループ終了:生成された数値が50以上になりました。
解説:
doブロック内の処理
mt_rand(1, 100)を使って1から100までのランダムな数値を生成しています。- 生成された数値を表示しています。
ループの継続条件
while ($number < 50)により、生成された数値が50未満であればループを継続します。- 初回の実行では必ず数値を生成し、条件を評価するため、do-while文が適しています。
この例では、for文では初回の実行を保証するのが直感的ではなく、ループ回数が事前に決まっていないため、do-while文が自然な選択となります。
do-whileループの注意点
do-whileループを使用する際は、無限ループに陥らないように、ループの条件がいずれfalseになるように注意が必要です。
まとめ
PHPのdo-whileループは、特定の条件下で少なくとも一度はコードを実行する必要がある場合に便利です。
この記事で紹介した基本的な使い方と例を参考にして、あなたのPHPプログラミングに柔軟性を加えましょう。
PHP初心者向け:for文の基本と応用
PHPでforeachループを使う方法:初心者向けガイド
PHPのwhileループ:初心者向けガイド