如果当前时间超出了我们的营业时间,请采取措施。我看到过这样的代码,如果时间在这两个时间之间,你可以做一些事情,但如果时间在时间之外,我需要它来做一些事情。
$current_time = date("H:i a");
$open = "8:30 am";
$close = "4:00 pm";
echo $current_time;
$date1 = DateTime::createFromFormat('H:i a', $current_time);
$date2 = DateTime::createFromFormat('H:i a', $open);
$date3 = DateTime::createFromFormat('H:i a', $close);
if ($date1 > $date2 && $date1 < $date3) {
echo 'here';
}
这是我在几个小时内使用的东西,需要两个小时以外的东西。
您只需更改条件:
if ($date1 < $date2 || $date1 > $date3) {
echo 'outside the hours';}
不要忘记将AND语句也更改为OR
当你没有打开。。。你已经关门了。因此,只需使用else{}来扩展if语句。像这样:
$current_time = date("H:i a");
$openAt = "8:30 am";
$closeAt = "4:00 pm";
$currentTime = DateTime::createFromFormat('H:i a', $current_time);
$openingTime = DateTime::createFromFormat('H:i a', $openAt);
$closingTime = DateTime::createFromFormat('H:i a', $closeAt);
if($currentTime >= $openingTime && $currentTime <= $closingTime){
echo "we're open!";
}else{
echo "we're closed!";
}
注意-如果您在上午8:30开门,在凌晨4:00关门,则应使用>=和<=操作员。
PS-为了更好的可读性,我随意重命名了变量。