
「独習PHP」を元に、要約メモしておきたいと思います。
for命令
あらかじめ指定された回数だけ繰り返し処理を行うための命令。
1 2 3 4 5 | <?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命令
1 2 3 4 5 6 7 | <?php $i=1; while ($i<6) { print ("$i 番目のループです。<br />"); $i++; } ?> |
do…while命令
1 2 3 4 5 6 7 | <?php $i=1; do { print ("$i 番目のループです。<br />"); $i++; } while ($i<6); ?> |
while命令は前置判断(ループの最初で条件判断を行う)、do…while命令は後置判断(ループの最後で条件判断を行う)。前置判断と後置判断では、ループが始まる前にすでに条件式がFALSEである場合に挙動の違いとして現れてくる。後置判断では必ず1回はループ処理されるが、前置判断では1回もループされない場合がある。
foreach命令
配列(連想配列)配下の各要素に対して繰り返し処理を行う。
1 2 3 4 5 6 | <?php $data=array ('大森'=>'男', '小林'=>'女', '林'=>'男', '森'=>'女'); foreach ($data as $key=>$value) { print ("$key : $value <br />"); } ?> |
大森 : 男 小林 : 女 林 : 男 森 : 女
break命令とcotinue命令
continue命令
特定の条件下で繰り返しを中断したり、一部の処理をスキップすることが可能になる。 たとえば以下は、1〜10までの偶数値のみを加算するスクリプト。
1 2 3 4 5 6 7 8 | <?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を越えたときのループ変数を出力する。
1 2 3 4 5 6 7 8 | <?php $num=9; for ($i=1;$i<=100;$i++) { if ($num > 100) { break } $num+=$i; } print ('合計が100を越えるのは1 〜' .--$i.' までを加算したときです。'); ?> |
合計が100を越えるのは1 〜14までを加算したときです。