草庐IT

夏令时

全部标签

php - MySQL 日期时间字段和夏令时——如何引用 "extra"小时?

我使用的是美国/纽约时区。在秋季,我们“后退”一个小时——实际上是在凌晨2点“获得”一个小时。在过渡点发生以下情况:现在是01:59:00-04:00然后1分钟后变成:01:00:00-05:00因此,如果您只是说“凌晨1:30”,那么您所指的是1:30的第一次还是第二次,这是不明确的。我正在尝试将调度数据保存到MySQL数据库,但无法确定如何正确保存时间。问题来了:“2009-11-0100:30:00”在内部存储为2009-11-0100:30:00-04:00“2009-11-0101:30:00”在内部存储为2009-11-0101:30:00-05:00这很好,也很符合预期。

ruby-on-rails - Rails 在哪里存储夏令时的开始和结束日期?

我使用的是Rails5,我的应用程序的时区设置为巴西利亚。巴西现在是冬天(没有夏令时)Time.current.dst?返回false但是在巴西,夏令时从2018年10月21日开始,所以当我这样做的时候(Time.current+10.days).dst?我希望它返回true,但它返回false.是否有表格可以让我查看Rails考虑的开始结束日期和每个时区的夏令时?或者再举个例子。我了解UTC没有夏令时。所以Time.current.strftime(%Z)返回-3这是UTC和当前巴西时间之间的正确时差。但是当我这样做的时候(Time.current+10.days).strftime

ruby-on-rails - 让 Rails 在显示日期时忽略夏令时

我在我的Rails应用程序中以UTC格式存储了一个日期,并试图将其显示给以"EasternTime(US&Canada)"作为时区的用户。问题是Rails不断将其转换为东部夏令时(EDT),因此午夜显示为8am,而应为7am。有没有办法阻止DST转换?>>time=DateTime.parse("2013-08-26T00:00:00Z")=>Mon,26Aug201300:00:00+0000>>time.in_time_zone("EasternTime(US&Canada)")=>Sun,25Aug201320:00:00EDT-04:00更新我最终改变了@zeantsoi的方法