我有一个名为“学生”的表,用于存储学生信息。上周,我添加了一个列(type-datetime)来跟踪学生的上次登录时间。

mysql - 将我现有的datetime列更新为mysql中的相应时区-LMLPHP

使用本地主机进行测试时,它运行良好。因此,我上传到托管服务器,几天后,我发现datetime与当地时间有所不同。我在代码中调用了now()函数,它随服务器时间(西雅图,美国时间)一起插入。我尝试将其设置为我的时区。

SELECT @@session.time_zone;
SET time_zone = 'Asia/Rangoon';
SET time_zone = "+06:30";
SET @@session.time_zone = "+06:30";


尽管它已执行,但不会像以前那样影响和插入服务器时间。

我的问题是如何将现有的datetime值列更新为各自的时区。谢谢和赞赏。

最佳答案

恕我直言,最好的方法是将所有日期保存在UTC中。仅在演示时,这些时间应转换为用户的时间和区域。
因为使用的是PHP,所以可以将输入转换为UTC并将输出转换为所需的时区以进行演示。
这也使向外国访问者在您的网站上显示自己的时间变得容易且可能。

关于mysql - 将我现有的datetime列更新为mysql中的相应时区,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/52163572/

10-13 03:34
查看更多