将UTC日期时间存储在数据库中

时间:2010-09-27 15:18:09

标签: php mysql datetime utc

我将转换所有日期&用户输入的时间(本地时间)到UTC并将其存储在数据库中。当显示回来时,我会将UTC时间转换为在其配置文件中设置的时区。好吗?

3 个答案:

答案 0 :(得分:3)

我觉得这很好。除了在配置文件中存储用户时区外,您还可以让客户端(例如,javascript)根据用户计算机时区转换UTC时间。

答案 1 :(得分:1)

只要您可以从存储的数据库记录转换为/来自任何时区,这就是您所需要的。

你所描述的将起作用。

答案 2 :(得分:1)

请注意有关时区的一些MySQL documentation&服务器/客户端工作:

  

每个连接时区。
  连接的每个客户端都有自己的时区设置,由会话time_zone变量给出。最初,会话变量从全局time_zone变量中获取其值,但客户端可以使用以下语句更改其自己的时区:
  MySQL的> SET time_zone = timezone;

因此,通常情况下,在您提出的解决方案中,一切都是正确的,但不要让实际的服务器或客户端时区发生变化,让您感到警惕。