前回に引き続きPHPのif文について書いていきたいと思います。
前回の記事はこちら⇒
まずはサンプルプログラムを見て行きましょう。
<?php $box = 1; if ($box == 1) { echo "number is 1."; } echo "<br>"; // 改行 echo $box."is number"; //この行は$boxの中身が1じゃなくても実行される
if (条件式) { 条件を満たす時に実行する処理 } 常に実行する処理
というように、カッコ()の中に書いた条件に合致した場合、
中カッコ{}の中に書かれた処理を実行しますが、
}以降のプログラムは条件に合致していなくても実行します。
もう1つサンプルを紹介して理解を深めましょう。
<?php $box = 2; if ($box == 1) { echo "number is 1."; } echo "<br>"; // 改行 echo $box."is number"; //この行は$boxの中身が1じゃなくても実行される
$box = 2;の部分が変わっています。
今度はnumber is 1.は表示されず(if文の条件に合致しないため)、
改行と2is number.が表示されています。(上にスペースがあるのが改行です。)
echo $box.”is number”;の処理はif文の条件によらず、実行されているのがわかると思います。
つまり、if文の条件が与える影響範囲は中カッコ{}の内側だけだ、ということです。
最後にもう1つだけサンプルプログラムを見ておきましょう。
<?php $box1 = 1; $box2 = 2; if($box1 == 1) { //この条件に合致したら下の3行の処理を実行する echo "box1's number is 1."; echo "<br>"; echo $box1."is number"; } echo "<br>"; if($box2 == 2) // 条件に合致したときに実行したいのは下の行だけ echo "box2's number is 2.";
これまで中カッコ{}の中のプログラムが実行されると説明してきましたが、
中カッコは上記のように条件に合致した時に実行したい処理が複数ある場合に用います。
もし、条件に合致した時に実行したい処理が1行だけであれば
中カッコ{}は不要となります。