在Ruby中减去日期并在几分钟内得到差异

Mar*_*ark 39 ruby date

我如何在Ruby中减去两个不同的UTC日期,然后在几分钟内得到差异?

谢谢

Ale*_*ban 57

如果减去两个Date或DateTime对象,则结果是一个Rational,表示它们之间的天数.你需要的是:

a = Date.new(2009, 10, 13) - Date.new(2009, 10, 11)
(a * 24 * 60).to_i   # 2880 minutes
Run Code Online (Sandbox Code Playgroud)

要么

a = DateTime.new(2009, 10, 13, 12, 0, 0) - DateTime.new(2009, 10, 11, 0, 0, 0)
(a * 24 * 60).to_i   # 3600 minutes
Run Code Online (Sandbox Code Playgroud)


Chu*_*bas 34

(时间1 - 时间2)/ 60

如果时间对象是字符串,Time.parse(time)则首先是它们

  • 如果有问题的对象是Time对象或Date对象,则取决于.时间# - 返回秒数,而日期# - 返回天数. (7认同)
  • 不应该是*24*60? (4认同)

小智 24

https://rubygems.org/gems/time_difference - Ruby的时差gem

start_time = Time.new(2013,1)
end_time = Time.new(2014,1)
TimeDifference.between(start_time, end_time).in_minutes
Run Code Online (Sandbox Code Playgroud)