php/mysql中的时区和dst处理

ymdaylpp  于 2021-06-18  发布在  Mysql
关注(0)|答案(0)|浏览(217)

我正在开发一个 PHP/MySQL webapp 它跟踪某些设备的状态,接收windows软件通过 web service (我也可以控制windows软件,所以我可以在必要时进行修改)。
我不得不面对时区问题,因为windows软件通常需要传递时间戳的文本值(例如“2018-12-06 15:30:00”),而不是 NOW() ,指其系统时间。运行它的计算机可以位于任何状态。
我已经将mysql数据从datetime格式迁移到timestamp,因为第一个格式不处理时区,而timestamp(如果我理解正确的话)总是存储与gmt相关的数据。
我怎样才能从windows软件中传递这个文本值来同时记录参考时区,从而给mysql一种将其正确转换为gmt的方法?我在想“2018-12-06 15:30:00+01:00”(我试过了,但没有成功)。
除此之外,我还需要一种方法来确定dst是否来自php,以便决定如何偏移时间戳值。有没有办法让这一切顺利?
edit:关于dst,我发现mysql应该有办法知道一个国家在任何时候相对于gmt的时间偏移量,但是处理这个问题的表通常不会在mysql服务器上填充。不幸的是,这也是我的情况,我不能手动填充它们,因为我的主机不提供对它们的访问。

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题