独習PHP」を元に、要約メモしておきたいと思います。

for命令

あらかじめ指定された回数だけ繰り返し処理を行うための命令。

<?php
for ($i=1; $i<6; $i++) {
 print ("$i 番目のグループです。<br />");
}
?>

1 番目のグループです。 2 番目のグループです。 3 番目のグループです。 4 番目のグループです。 5 番目のグループです。

最初の式($i=1)で初期値をセットする。 2番目の式($i<6)はループの継続条件を示す。 3番目の式($i++)はループが1回終了するたびに実行される増減式。

while命令とdo…while命令

あらかじめ繰り返し回数が決まっている場合に便利なfor命令に対して、何かしらループ内の特定の条件に基づいてループの終了を制御したい場合に使用する。

while命令

");
 $i++;
}
?>

do…while命令

<?php
$i=1;
do {
 print ("$i 番目のループです。<br />");
 $i++;
} while ($i<6);
?>

while命令は前置判断(ループの最初で条件判断を行う)、do…while命令は後置判断(ループの最後で条件判断を行う)。前置判断と後置判断では、ループが始まる前にすでに条件式がFALSEである場合に挙動の違いとして現れてくる。後置判断では必ず1回はループ処理されるが、前置判断では1回もループされない場合がある。

foreach命令

配列(連想配列)配下の各要素に対して繰り返し処理を行う。

<?php
$data=array ('大森'=>'男', '小林'=>'女', '林'=>'男', '森'=>'女');
foreach ($data as $key=>$value) {
 print ("$key : $value <br />");
}
?>

大森 : 男 小林 : 女 林 : 男 森 : 女

break命令とcotinue命令

continue命令

特定の条件下で繰り返しを中断したり、一部の処理をスキップすることが可能になる。 たとえば以下は、1〜10までの偶数値のみを加算するスクリプト。

<?php
$num=0;
for ($i=1; $i<=10; $i++) {
 if ($i%2!=0) { continue; }
 $num+=$i;
}
print ("合計値は $num です。");
?>

合計値は 30 です。

break命令

continue命令は、特定条件を満たしたときにcontinue命令を実行して現在のループをスキップし、次のループを継続して実行できる。

break命令は、特定条件を満たしたタイミングでループを脱出する。以下は、1〜100までの値を加算し、合計値が100を越えたときのループ変数を出力する。

<?php
$num=9;
for ($i=1;$i<=100;$i++) {
 if ($num > 100) { break }
 $num+=$i;
}
print ('合計が100を越えるのは1 〜' .--$i.' までを加算したときです。');
?>

合計が100を越えるのは1 〜14までを加算したときです。

こちらの関連記事もあわせてどうぞ!