【问题标题】:What are dst and offset in timezone abbreviation when list with DateTimeZone::listAbbreviations()?当使用 DateTimeZone::listAbbreviations() 列出时,时区缩写中的 dst 和偏移量是什么?
【发布时间】:2019-12-17 18:33:01
【问题描述】:

我已经在网上搜索了答案,但没有成功。而且我知道 UTC 偏移量(例如亚洲/德黑兰 +3:30)。但是我还没有弄清楚列表中的 dst 和 offset 是什么。

例如,这个键:

  ["tmt"]=>
  array(2) {
    [0]=>
    array(3) {
      ["dst"]=>
      bool(false)
      ["offset"]=>
      int(12344)
      ["timezone_id"]=>
      string(11) "Asia/Tehran"
    }
    [1]=>
    array(3) {
      ["dst"]=>
      bool(false)
      ["offset"]=>
      int(5940)
      ["timezone_id"]=>
      string(14) "Europe/Tallinn"
    }
  }

显示,对于亚洲/德黑兰(UTC 偏移量为 +03:30 = 12600,TMT 对应于 UTC 偏移量 +05)偏移量为 12344。它是如何计算的? dst 是什么意思?

【问题讨论】:

  • @mickmackusa 指出。把它变成了一个答案。只是需要时间来提供更多信息

标签: php datetime timezone


【解决方案1】:

手册将结果描述为:

(an) 包含 dst、偏移量和时区名称的关联数组

-- Source

输出中的键是时区缩写(例如 bst 或 gmt 等),值是与该缩写关联的所有时区。

这些值具有共享的格式,其中:

  • dst 指定是否在该时区遵守夏令时。这意味着如果一年一次(例如在北半球的春季),时间会偏移 +1 小时,然后在大约 6 个月后恢复。
  • offset 是时区远离 UTC 的时间(以秒为单位)
  • timezone_id 是可能对应于给定时区的语言环境的字符串标识符。 (时区缩写不是唯一的)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-08-04
    • 2011-12-13
    • 1970-01-01
    • 2020-10-21
    • 2012-11-30
    • 1970-01-01
    • 1970-01-01
    • 2011-11-12
    相关资源
    最近更新 更多