【发布时间】:2015-08-20 12:46:28
【问题描述】:
我有一个托管在 php&mysql 中的网站。
我正在 Mysql 中寻找一个包含所有时区名称和 +/- 分钟的表,以添加到 UTC 以获取用户的本地时间。
简单到 2 列:
时区名称 |添加分钟
我可以在哪里下载脚本来填充此表?
提前致谢。
编辑:添加信息和答案
寻找这个表格,我发现这个页面有几个表格:
zone_id、缩写、time_start、gmt_offset 和 dst。
我觉得有一个很好的起点,如果设置了 dst,则修复时间。
http://timezonedb.com/download
真的,我已经搜索了几天这样的东西。 现在我添加了一些额外的单词并找到了那个页面。
【问题讨论】:
-
您打算如何处理夏令时?你期待什么样的“名字”?我认为时区比您预期的要复杂。
-
我的想法是用户选择一个时区,然后我添加以分钟为单位的差异。用户始终可以通过 php.ini 中的组合框更改时区。我认为几个网站都这样做。
-
我的时区是“欧洲/伦敦”(嗯,那是 IANA/TZDB ID)。在冬天,那是 UTC+0。在夏天,这是 UTC+1。它在你的桌子上是什么样子的?请注意,timezonedb 中的表不止这两列。
-
也许只是为了在 30 分钟的范围内减少 24 或 48 行,并打开或关闭 DST。如果你告诉我你在 +0 dst,我相信我可以在 php 代码中修复你的时间
-
不,我认为您不了解时区有多复杂。不同的区域可能有相同的当前偏移量,但关于何时更改 DST 的规则不同,以及不同的历史数据。