我在基于两个预先指定的时间比较当前时间时遇到问题。让我告诉我想要什么: 如果当前时间在晚上10点到早上8点之间,我想显示一条消息。我的代码是
$current_time = strtotime('now');
if ( $current_time > strtotime('10:00pm') && $current_time < strtotime('8:00am') ) {
//Display message
}
但它不起作用,因为在凌晨12:00之后,strtotime('10:00pm')计算今天的10PM值并且无法在给定条件下通过。所以我需要你的建议。
答案 0 :(得分:1)
试试这个,
$current_hour = date("G", strtotime("now"));
if ($current_hour > 23 || $current_hour < 8) {
if ( $current_time > strtotime('10:00pm -1 Day') && $current_time < strtotime('8:00am') ) { //after
//Display message
}
}else{
if ( $current_time > strtotime('10:00pm') && $current_time < strtotime('8:00am +1 Day') ) {
//Display message
}
}
答案 1 :(得分:1)
date("G", strtotime("now"))
将显示24小时不带前导零的格式。
您想要的代码是:
$current_hour = date("G", strtotime("now"));
if ($current_hour >= 22 || $current_hour < 8) {
//Display message
}