【问题标题】:Time Zones & Display Dates in a CMSCMS 中的时区和显示日期
【发布时间】:2012-02-01 11:43:02
【问题描述】:

我已经阅读了很多关于这个问题的资料,但我认为它并不像听起来那么简单。

我们正在构建一个专有的 CMS,经过大量研究后决定以 UTC 格式存储所有日期和时间(作为 INT 字段中的 unix 时间戳或作为 DATETIME 字段)。

我完全熟悉如何处理时间偏移等。

由于我们将所有日期/时间值存储为 UTC,并在显示这些值时将这些值转换为特定时区:

  1. 在CMS软件中,如果您更改网站的时区,显示值会发生变化是否很常见?例如,假设您的偏移量为 +10,因此显示的日期是 2011 年 3 月 1 日 14:15;如果将偏移量更改为 -10,那篇文章显示的日期和时间是否会更改为 2011 年 2 月 28 日 18:15?

  2. 如果这是正确的,如果您的时区设置遵循夏令时会发生什么?当然,当时区偏移因夏令时而发生变化时,所有先前发表的文章的日期和时间也会发生变化,可能会移动日期或月份吗?我看不出这会是一个吸引人的功能。

本质上,我在问如何在不产生第二种效果的情况下启用日期和时间的时区更改。还是我搞错了?

非常感谢!

【问题讨论】:

    标签: php time content-management-system utc zone


    【解决方案1】:

    建议根据 UTC 存储所有日期时间戳。

    每次向用户显示日期或时间时,请使用网站全局时区设置、管理员可能配置的任何内容或检查当前用户的时区来确定上下文。这个逻辑取决于您决定什么最适合日期或时间戳所指的内容。

    这是我在为在英国有仓库、在中国有客户的客户开发自己的 CMS 时使用的解决方案。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-01-27
      • 2011-02-28
      • 1970-01-01
      • 2014-08-03
      • 2021-07-09
      • 2019-03-08
      • 2015-01-15
      • 1970-01-01
      相关资源
      最近更新 更多