代码之家  ›  专栏  ›  技术社区  ›  mr.b Scott Lystig Fritchie

如何获取数据来填充网站上的时区切换器小部件?

  •  0
  • mr.b Scott Lystig Fritchie  · 技术社区  · 14 年前

    任务:

    时区选择器小部件,允许网站访问者选择他们的时区应该生成和填充合理的数据。它应该提供如下选择:

    GMT-11 (HH:MM actual time in that zone)
    GMT-10 (...)
    GMT-1 (...)
    ... now for the tricky part:
    GMT (...)
    GMT+1 (...)
    ... and then all the way until +12.
    

    当用户选择不同的时区时,服务器应该能够确定要设置的时区。一旦用正确的数据填充列表,第二部分就不是什么问题了。

    在上面的列表中,我标记了某些“棘手”的部分。这就是欧洲/伦敦这样的时区所在地。在正常时间,欧洲/伦敦=GMT,但在夏令时,欧洲/伦敦=GMT+1。。。你能看到问题吗?

    -11=GMT-11,-10=GMT-10。。。 然后应用一些逻辑来定位具有适当时差的时区,然后从那时起将该时区设置为默认时区。

    2 回复  |  直到 14 年前
        1
  •  0
  •   Jon Skeet    14 年前

    看看什么 Google Calendar 做。它显示 标准时间 偏移量以及城市名称,例如。

    (GMT+01:00) Tunis
    

    现在的 与UTC和城市的偏移量。老实说,不管怎样,你都会把人搞糊涂的。

        2
  •  1
  •   Michael Borgwardt    14 年前

    最常用的时区数据源是 tz/zoneinfo 数据库-公开免费提供。

    six and a half minutes that officially don't exist ).