入れ子による条件分岐処理
これってな〜に??
条件分岐の処理において、複数の「if」「if〜else」「if〜elseif〜else」などを入れ子にすることもできます。
これにより、より複雑な条件分岐の処理が可能になります。
ここでは、入れ子を利用して、5つの時間帯によって表示するメッセージを変更してみます。
実際に使ってみよう!
現在の時刻が11時より前であれば「おはようございます!」、11時以降で12時前の場合は「もうすぐ昼休みです!」、
18時前なら「こんにちは!」、21時前なら「こんばんは!」、21時以降なら「遅くまでご苦労さま!」を出力します。
入力例
<?php
$hour = date("H");
if ($hour < 12) { ←@時間が12時以前かを判断します
if ($hour < 11) {
print "おはようございます!"; ←A@が真で、さらに時間が11時前であれば「おはようございます!」と出力します
}
else {
print "もうすぐ昼休みです!"; ←B@が真でAは偽である場合(11時以降〜12時前)は「もうすぐ昼休みです!」を出力します
}
}
else { ←C@が偽の場合は、こちらに移ります
if ($hour < 18) {
print "こんにちは!"; ←D18時前なら「こんにちは!」を出力します
}
elseif ($hour < 21) {
print "こんばんは!"; ←E21時前なら「こんばんは!」を出力します
}
else {
print "遅くまでご苦労さま!"; ←F21時以降なら「遅くまでご苦労さま!」を出力します
}
}
?>
実行すると……!!