在ruby中,我使用DateTime.now.next_year.to_time
来获取一年后一天的时间和日期。现在需要改为10年。我怎么能这样做。
答案 0 :(得分:7)
这似乎有效:
DateTime.now.next_year(10).to_time
#=> 2027-04-14 20:40:38 +0000
也接受负数并做你期望的事。
答案 1 :(得分:5)
Date#next_year方法会讨论推进多少年
DateTime.now.next_year(10).to_time
#=> 2027-04-14 16:41:09 -0400
答案 2 :(得分:1)
如果您不介意使用ActiveSupport,可以从活动支持中获取时间,如下所示:
require "active_support/time"
然后你可以这样做以获得一个DateTime
对象:
DateTime.now + 10.years
=> Thu, 15 Apr 2027 13:02:15 +0000
或者如果您想要Time
对象:
DateTime.now.to_time + 10.years
=> 2027-04-15 13:02:15 +0000