我有一个卡到期信息传递给我:
$date = '2014-12-22';
$hour = '19';
$minute = '30';
我需要确定是否可以根据门位置的当前日期和时间授予访问权限,每个日期和时间都在不同的时区。检查这一点的脚本每小时生成一次并分发到访问服务器,如果门的本地时间在到期时间之前,则需要推断出访问服务器(整个设计相当复杂且设计不佳)。
我需要将下面的 $door_datetime 与卡到期信息(日期、小时、分钟)进行比较
$door_datetime = new DateTime;
$door_datetime->setTimezone(new DateTimeZone($door_timezone));
一个额外的问题是数据库数据没有被主动清理,并且有数百万张卡的到期日期、小时、分钟要与 $door_datetime 进行比较;正如您可以想象的那样,在繁忙的时候,随着服务器速度变慢,这会成为一个问题。
关于如何有效地找出 $door_datetime 是在 $date、$hour、$time 之前还是之后的任何想法?