我對日期時間字段的計算有問題。 我有兩個變量:日期時間範圍的計算
a = Sat, 01 Feb 2014 13:00:00 CET +01:00
和
b = Fri, 28 Feb 2014 13:00:00 CET +01:00
我要計算多少天從傳遞到B的範圍。 請幫助。
我對日期時間字段的計算有問題。 我有兩個變量:日期時間範圍的計算
a = Sat, 01 Feb 2014 13:00:00 CET +01:00
和
b = Fri, 28 Feb 2014 13:00:00 CET +01:00
我要計算多少天從傳遞到B的範圍。 請幫助。
您可以使用它。
require 'date'
(Date.parse('Fri, 28 Feb 2014 13:00:00 CET +01:00') - Date.parse('Sat, 01 Feb 2014 13:00:00 CET +01:00')).to_i
=> 27
i.e
(Date.parse(b) - Date.parse(a)).to_i
這就是我要回答的問題,但你首先得到它。 +1 – Pavan
require 'date'
a=Date.parse('Sat, 01 Feb 2014 13:00:00 CET +01:00')
=> #<Date: 2014-02-01 (4913379/2,0,2299161)>
b=Date.parse('Fri, 28 Feb 2014 13:00:00 CET +01:00')
=> #<Date: 2014-02-28 (4913433/2,0,2299161)>
b-a
=> (27/1)
(b-a).to_i
=> 27
您還可以使用time_diff寶石計算差值。
在你的寶石文件中添加gem 'time_diff'
我已經添加在index.html.erb的代碼,但,在那裏你想你可以任意使用。
看看下面的代碼。
<% require 'time_diff' %>
<% a = Time.diff(Time.parse('Sat, 01 Feb 2014 13:00:00 CET +01:00'), Time.parse('Fri, 28 Feb 2014 13:00:00 CET +01:00'), "%d") %>
<%= a[:diff] %>
,我得到了以下結果
「27日」
您已經嘗試了一下(a..b)? – Severin
定義一天何時過去。這個範圍是否與當天午夜時刻重疊?是否當範圍與一天中的任何時刻重疊?它是否從一天的開始到結束時重疊?等等。 – sawa
你是指這兩個日期之間的差異,即a-b? – Pavan