为什么有多个时区选择都解析为 EST


Why are there multiple timezone choices that all resolve to EST?

我需要添加仅更改北美时区的功能。共有六个时区,包括夏威夷和阿拉斯加。

我在美国东部,所以我的时区是东部。在为我的位置选择时区时,我可以选择纽约、芝加哥和其他一些时区。我不确定为什么有这么多不同的时区都解析为相同的偏移量;除非因为夏令时。

我基本上要找的是这六个区域:

  • 科技委
  • MST
  • 太平洋标准时间
  • 阿克斯特
  • 高铁

有人可以告诉我为什么有这么多不同的时区可供选择,以解决相同的偏移量?

PHP 时区

列表是从 PECL 时区数据库中提取的。PECL 时区数据库来自"Olson"数据库,该数据库由 IANA 组织维护。

在 IANA 网站上,他们声明了以下有关其维护时区数据库的信息:

时区数据库(通常称为 tz 或 zoneinfo)包含代码和 代表许多代表当地时间历史的数据 遍布全球的地点。它会定期更新以反映 政治机构对时区边界、UTC 偏移量所做的更改, 和夏令时规则。其管理程序记录在 BCP 175:维护时区数据库的过程。

时区

的话题由于并非所有州都使用夏令时(例如,亚利桑那州、夏威夷、波多黎各不使用夏令时)这一事实变得更加复杂。

因此,人们可以从中得出结论,特定城市的时区基于其区域边界,夏令时规则和其他政治因素。因此,例如,仅仅因为某个城市恰好在西部并不意味着它保证是太平洋标准时间。

此外,与设置其实际国家/城市时区标识符相比,手动将西部区域设置为 PST 在技术上更不易于维护,这样,如果将来偏移量发生变化,应用程序将继续设置正确的时间。