使用日期和时间

时间:2010-02-16 03:48:41

标签: ruby-on-rails ruby date time

  1. 例如,我的UTC日期为Tue, 16 Feb 2010 03:12:02 UTC +00:00
  2. 我想在这个日期添加168小时以获得未来的UTC日期。
  3. 最好的方法是什么?

3 个答案:

答案 0 :(得分:9)

你标记了问题rails所以这里是你如何使用一些助手在Rails中做到这一点:

time_string = 'Tue, 16 Feb 2010 03:12:02 UTC +00:00'
new_time = Time.parse( time_string ) + 168.hours

如果您已将其作为Time对象,请添加168.hours

new_time = old_time + 168.hours

或者您只需添加1.week

new_time = old_time + 1.week

答案 1 :(得分:1)

仅供参考,'9.days'比'168.hours'更简单。

>> new_time = Time.parse( time_string ) + 168.hours
=> Tue Feb 23 03:12:02 UTC 2010
>> new_time = Time.parse( time_string ) + 9.days
=> Thu Feb 25 03:12:02 UTC 2010

答案 2 :(得分:1)

在vanilla Ruby中,它并不困难:

time_string = 'Tue, 16 Feb 2010 03:12:02 UTC +00:00'
new_time = DateTime.parse( time_string ) + 7

(你可以使用Date类,它仍然有效。)

我承认在几个小时内加入会有点棘手。