首页 文章

如何为Web应用程序保留准确的时间(夏令时)?

提问于
浏览
2

好吧,这可能是一个简单的问题,但我还没有找到一个有效的解决方案,所以对任何可以提前帮助的人都是如此 .

请考虑以下情形:我们在MySQL上运行的Web应用程序(如果您需要知道)与时间相关,例如在用户指定的时间发送电子邮件的应用程序 . 现在每个用户都设置了他的正确时区/城市,并且服务器在UTC上运行以简化 . 准确的时间是服务器时间时区夏令时 . 用户希望电子邮件在2010年1月4日下午5点到达他 . 我的问题是如何获得正确的夏令时?意思是这个用户在观察DST的区域中,如果他/她观察到或未观察到它?

我的第一个冲动是找到一个网络服务,给定当前时区/城市将给你正确的夏令时 . 到目前为止我还没有找到一个 . 我对第二个想法感到气馁,我必须为DST制定规则,因为这些规则每年都会发生变化,而在一些国家则需要超过一两天 .

任何帮助非常感谢 .

2 回答

  • 1

    如果您的编程语言不必自己编写规则 . 您只需要编写对zoneinfo数据库的支持 .

  • 0

    将自1970年1月1日GMT以来的日期存储在您的数据库中,您将始终有时间处理 . 当用户输入他的时间时,使用正确的时区设置适当地转换它,你就完成了 .

    您的服务器已经在没有时区的情况下运行,所以到时候它很容易选择 .

    这是some code在LISP中进行时区转换:

相关问题