基本上我有一个网站,允许商店存储他们的打开/关闭时间。MySQL/PHP中的时区偏移(和st/dst更改)
现在,我试图添加让访客能够查看商店是否关闭的功能。
我明白我可以运行一个查询,如:
SELECT * FROM `store_hours` WHERE TIME(NOW()) BETWEEN `opens` AND `closes`
...和查询工作,并检索当前打开的商店。不过,起初这个查询没有考虑到商店的时区。
所以..我决定到商店的开启/关闭时间与转换为UTC附加存储:
ID | store_id |打开|关闭| utc_opens | utc_closes
现在我可以查询,像这样:
SELECT * FROM `store_hours` WHERE TIME(NOW()) BETWEEN `utc_opens` AND `utc_closes`
所以,现在我可以很容易地得到一个全局列表中有多少商店是开放的,它甚至不不管他们在哪里。
现在我来解决这个问题。通过PHP,我所做的只是添加偏移时间戳:
date('H:i', strtotime($values['closes']) + $offset)
然后我开始思考太平洋标准时间,然后夏令时。
我想添加这个打开/关闭功能,它将成为系统的一个重要组成部分。如果我休息一小时,那只会让我失去很多收入。