从 MySQL 时间戳列更改时间返回的日期



我目前正在解决PHP服务器位于欧洲但数据库服务器位于墨西哥的问题。

在我的应用程序中,时区设置为:

date_default_timezone_set('America/Mexico_City');

该应用程序没有设置 MySQL 时区,因此它似乎使用系统时区,即 America/Mexico_City

奇怪的是,当我在 MySQL 中查询时区列时,它有时会使用墨西哥的时间给期,有时使用欧洲的时间给期。

我知道 mysql 将时间戳存储为整数并将它们作为日期字符串返回,我可以通过显式设置数据库连接使用的时区来解决这个问题$db->query("SET time_zone = 'America/Mexico_City'");

但我的问题是,为什么它有时会将时间戳作为日期字符串返回欧洲时间,有时返回为墨西哥时间的日期字符串?应用程序不使用任何类型的特定缓存。

可能,你的问题与这个问题有关。

PHP和MySQL有时区问题

如何设置 MySQL 的时区?

注意他们如何使用SET GLOBAL time_zone = "your_time_zone"SET SESSION time_zone = "your_time_zone"

希望对:)有所帮助

相关内容

  • 没有找到相关文章

最新更新