我有这个时间存储为一个字符串:获取当地时间
2010-07-25 4点16分25秒
这是GMT时间,一些动作我拿了。
因为我住在耶路撒冷时区,所以我想在耶路撒冷时间早上07:16显示它,而不是在3小时前的04:16:25 GMT时间。
如何正确使用Ruby on Rails以编程方式将其转换?我从服务于不同地点的用户时需要考虑的众多时区功能和考虑事项,似乎迷失了方向。
我想: Time.parse( “2010-07-25 4时16分25秒”) ,它给了我: “太阳报7月25日4时16分25秒+0300 2010”。
我想“+0300”与我在哪里的区别?
有关这方面的一些信息,或者甚至链接到一篇不假设您了解的文章的链接,都会对您有所帮助。
嘿斯洛博丹, 感谢您的回答,我没有收到我的电子邮件,只是在网站上。我已经在environment.rb中设置了耶路撒冷时区(是的,我重新启动了应用程序)。我需要的不仅仅是这些。正如我所说的,当我展示这一次时,我会得到“Sun Jul 25 04:16:25 +0300 2010”,而不是我耶路撒冷的时间。也许我应该搬到英国? :-)我该如何去在自己的时区显示这个明显的GMT时间? – mjnissim 2010-08-05 08:25:23
实际上,现在我更近一点了,那不是UTC/GMT时间。它是UTC + 3,这是耶路撒冷时间。想想看。当你这样做时:Time.parse(“2010-07-25 04:16:25”)它给了你:“Sun Jul 25 04:16:25 +0300 2010” - 这是你输入的时间,Rails假设解析时间在耶路撒冷时区,它返回适当的时间对象。 Time.parse(“2010-07-25 04:16:25 GMT”)=> Sun Jul 25 07:16:25 +你可以通过添加GMT来告诉Time.parse你有不同的时区。 0300 2010 – 2010-08-05 11:01:49