ループ
コンピューターサイエンスでは、ループとは、特定の条件が満たされるまで一連の命令を繰り返すプログラミング構造です。プログラマーは、値を順番に処理したり、数値の合計を計算したり、関数を繰り返し実行したりするなど、さまざまな目的でループを使用します。
ループはすべての最新のプログラミング言語でサポートされていますが、その実装や構文は異なる場合があります。最も一般的なループには、whileループとforループがあります。
Whileループ
whileループは、プログラミングにおける最も単純なループの形式です。条件が有効である間、ループを続けることを指定します。次のPHPの例では、iがnumと等しくなるまでwhileループが続きます。
$i = 1;
$num = 21;
while ($i < $num) // stop when $i equals $num
{
echo "$i, ";
$i++; // increment $i
}
$iが1で$numが21の場合、ループは1、2、3、4…などの値を20まで出力します。その後、whileの条件が満たされたため、ループは20回の反復の後に停止、つまり「break」します。
Forループ
forループはwhileループに似ていますが、ソースコードを簡潔にできます。forループの文では、開始点と終了点、および反復ごとの増分を定義します。以下は、上のwhileループと同じループをforループとして定義したものです。
$num = 21;
for ($i = 1; $i < $num; $i++) // stop when $i equals $num
{
echo "$i, ";
}
forループとwhileループは相互に置き換えて使用できることが多いものの、どちらか一方を使うほうが適している場合もよくあります。ほとんどの場合、forループのほうが簡潔で読みやすいため、好まれます。ただし、状況によってはwhile文のほうが効率的なこともあります。たとえば、次のPHP文を使うと、1行のコードだけでMySQLの結果からすべての値を配列に読み込めます。
while ($row = mysql_fetch_array($result))
NOTE: ループは指定された条件が満たされるまで繰り返されるため、ループがどこかの時点で停止することを確認することが重要です。条件が決して満たされない場合、ループは無期限に続き、無限ループが発生します。無限ループを許すコードを書くのは、プログラミングの悪い習慣です。無限ループによってプログラムがクラッシュする可能性があるためです。
知識をテストする