我在mysql中有一个datetime字段。现在()给我上午9点,UTC_TIMESTAMP()给我下午2点。客户实时是下午4点。
有些帖子说我应该使用时间戳来解决TZ问题,有些人说要不惜一切代价避免它,所以现在我很困惑。
生成数据的人(插入到数据库中)和读取数据的人(客户)都在同一个TZ中,但服务器和数据库位于其他位置。如何确保客户端将在自己的TZ中检索日期?
答案 0 :(得分:0)
您正在处理php
服务器时区,mysql
服务器时区和用户的时区。显然,所有这些都是不同的。
要保留用户的原始时区,您需要将用户的时区保存在数据库中(按位置)。然后将php
或mysql
时区与之相关联,并相应地显示。
我不知道是否有其他方法可以这样做。 这有助于您转换时区:http://php.net/manual/en/class.datetimezone.php