如何每天使用PHP代码查找特定的时间间隔

时间:2019-05-03 02:58:11

标签: php mysql

在我的学生出勤项目中,每天早上9.45到10.30之间,老师应标记学生的出勤情况。

因此,老师应该只能在该时间标记出勤。其余时间应禁用学生名单。

在这里我遇到一个问题,发现服务器当前时间每天都在9.45am到10.30am之间。

$now = time();  
$today = strtotime('9:50');
//do not know how to find current date with time interval 9.45am and 10.30am
if (($today - $now) > 0) {
    $status = "disabled";
} else {
    $status = "active";
}

请帮助我找到解决方案。

1 个答案:

答案 0 :(得分:2)

$current_time = date('h:i:s a'); //now
$start = "9:50 am";
$finish = "10:30 am";
$date1 = DateTime::createFromFormat('H:i a', $current_time);
$date2 = DateTime::createFromFormat('H:i a', $start);
$date3 = DateTime::createFromFormat('H:i a', $finish);
if ($date1 > $date2 && $date1 < $date3)
{
    $status = "active";
} else {
    $status = "disabled";
}

要在不等待正确时间的情况下进行测试,可以这样设置$current_time

$current_time = "10:31 am";

我希望它是不言自明的,但是如果您有任何疑问,请提出。和/或查看dateTime