「独習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までを加算したときです。