введите код в зависимости от времени суток

Мне нужно повторить код или сообщение на странице в зависимости от часа дня. Как приветственное сообщение, «добрый вечер» или «хороший день»,

Я не знаю, как быстро группировать определенные часы и назначать сообщение каждой группе, например

с 13:00 до 16:00 pm = «добрый день» и с 4:00:01 до 8:00:00 = «хороший вечер»,

до сих пор я имею:

<?php date_default_timezone_set('Ireland/Dublin'); $date = date('h:i:s A', time()); if ($date < 05:00:00 AM){ echo 'good morning'; } ?> 

Но я не знаю, как передать диапазон часов сообщениям.

<?php /* This sets the $time variable to the current hour in the 24 hour clock format */ $time = date("H"); /* Set the $timezone variable to become the current timezone */ $timezone = date("e"); /* If the time is less than 1200 hours, show good morning */ if ($time < "12") { echo "Good morning"; } else /* If the time is grater than or equal to 1200 hours, but less than 1700 hours, so good afternoon */ if ($time >= "12" && $time < "17") { echo "Good afternoon"; } else /* Should the time be between or equal to 1700 and 1900 hours, show good evening */ if ($time >= "17" && $time < "19") { echo "Good evening"; } else /* Finally, show good night if the time is greater than or equal to 1900 hours */ if ($time >= "19") { echo "Good night"; } ?>
<?php /* This sets the $time variable to the current hour in the 24 hour clock format */ $time = date("H"); /* Set the $timezone variable to become the current timezone */ $timezone = date("e"); /* If the time is less than 1200 hours, show good morning */ if ($time < "12") { echo "Good morning"; } else /* If the time is grater than or equal to 1200 hours, but less than 1700 hours, so good afternoon */ if ($time >= "12" && $time < "17") { echo "Good afternoon"; } else /* Should the time be between or equal to 1700 and 1900 hours, show good evening */ if ($time >= "17" && $time < "19") { echo "Good evening"; } else /* Finally, show good night if the time is greater than or equal to 1900 hours */ if ($time >= "19") { echo "Good night"; } ?> 
 $hour = date('H', time()); if( $hour > 6 && $hour <= 11) { echo "Good Morning"; } else if($hour > 11 && $hour <= 16) { echo "Good Afternoon"; } else if($hour > 16 && $hour <= 23) { echo "Good Evening"; } else { echo "Why aren't you asleep? Are you programming?"; } 

… должен вас начать (часовой пояс нечувствителен).

Я думал, что эта нить может использовать хороший однострочный слой:

 $hour = date('H'); $dayTerm = ($hour > 17) ? "Evening" : ($hour > 12) ? "Afternoon" : "Morning"; echo "Good " . $dayTerm; 

Если вы проверите самый высокий час (вечер), вы можете полностью исключить проверки диапазона и сделать приятный, более компактный условный оператор.

 $dt = new DateTime(); $hour = $dt->format('H'); 

теперь проверьте этот $hour в утреннем, дневном, вечернем или ночном диапазонах и, соответственно, передайте сообщение

 date_default_timezone_set('Asia/Dhaka'); $time=date('Hi'); if (($time >= "0600") && ($time <= "1200")) { echo "Good Morning"; } elseif (($time >= "1201") && ($time <= "1600")) { echo "Good Afternoon"; } elseif (($time >= "1601") && ($time <= "2100")) { echo "Good Evening"; } elseif (($time >= "2101") && ($time <= "2400")) { echo "Good Night"; } enter code here else{ echo "Why aren't you asleep? Are you programming?<br>"; } 

?>