两个时间实例之间的天数

Sun*_*day 22 ruby time date

如何确定Ruby中两个Time实例之间的天数?

> earlyTime = Time.at(123)
> laterTime = Time.now
> time_difference = laterTime - earlyTime
Run Code Online (Sandbox Code Playgroud)

我想确定天数time_difference(我不担心几天的时间.上下调整很好).

Ser*_*sev 42

两次的差异以秒为单位.将其除以24小时内的秒数.

(t1 - t2).to_i / (24 * 60 * 60)
Run Code Online (Sandbox Code Playgroud)

  • 这不适用于夏令时更改. (5认同)

Phr*_*ogz 16

require 'date'
days_between = (Date.parse(laterTime.to_s) - Date.parse(earlyTime.to_s)).round
Run Code Online (Sandbox Code Playgroud)

编辑 ...或更简单......

require 'date'
(laterTime.to_date - earlyTime.to_date).round
Run Code Online (Sandbox Code Playgroud)


小智 7

earlyTime = Time.at(123)
laterTime = Time.now
time_difference = laterTime - earlyTime
time_difference_in_days = time_difference / 1.day  # just divide by 1.day
Run Code Online (Sandbox Code Playgroud)


Kam*_*nek 5

[1] pry(main)> earlyTime = Time.at(123)
=> 1970-01-01 01:02:03 +0100
[2] pry(main)> laterTime = Time.now
=> 2014-04-15 11:13:40 +0200
[3] pry(main)> (laterTime.to_date - earlyTime.to_date).to_i
=> 16175
Run Code Online (Sandbox Code Playgroud)