当前时间在两个小时之间


Current time between two hours

我的网站有"StartHour"和"EndHour"

例:

如果当前时间 (1500) 介于站点工作的 StartHour(0800) 和 EndHour(2300) 之间,则:

    $currentTime= date('Hi');
    $startTime= $setting_info['start_hour']; // 
    $endTime=  $setting_info['end_hour']; //
if($currentTime>=$startTime && $currentTime<=$endTime) 
    {
    echo "Site Works Perfectly";
    }

问题是,例如,当$endTime大于 2359 时,我希望我的网站从 0800 到 0200 工作。它不起作用,因为如果$currenttime是 1000,它将大于 $startTime,但也会大于$endTime

或者,如果$currenttime是 0000,它将小于 $starttime 小于 $endtime

我不知道如何解决这个问题。

请帮忙!

像下面这样使用它:

<?php
 $currentTime= time();
$startTime= "08:00:00";
$endTime=  "22:00:00";
 $startTime=strtotime(date('Y-m-d '.$startTime));
 strtotime($startTime);
$endTime=strtotime(date('Y-m-d '.$endTime));
if($currentTime>=$startTime && $currentTime<=$endTime) 
    {
    echo "Site Works Perfectly";
    }
?>

您可以使用strtotime()将时间字符串转换为时间戳,并将它们与thime()进行比较

$st_time    =   strtotime($setting_info['start_hour']);
$end_time   =   strtotime($setting_info['end_hour']);
$cur_time   =   strtotime(now);
if($st_time < $cur_time && $end_time > $cur_time)
{
   echo "WE ARE CLOSE NOW !!";
}
else{
   echo "WE ARE OPEN  NOW !!";
}