我有两个DateTime对象,一个在过去,另一个代表当前的日期时间。我试图找出两者之间已经过了多少分钟:
past = "Wed, 03 Jul 2013 00:59:39 UTC +00:00".to_datetime
now = "Wed, 03 Jul 2013 01:04:19 +0100".to_datetime
seconds = (now - past) #result is (-83/2160)
这是不正确的。秒数应为280,即两次之间经过的秒数。
答案 0 :(得分:1)
减去两个DateTimes以天为单位返回已用时间。
所以你可以这样做:
past = "Wed, 03 Jul 2013 00:59:39 UTC +00:00".to_datetime
now = "Wed, 03 Jul 2013 01:04:19 +0100".to_datetime
seconds = (now - past) * 1.day
# => -3320.0
或者你可以这样做:
seconds = (now.to_i - past.to_i)
# => -3320
※由于时区,结果是否定的。
past.utc
# => Wed, 03 Jul 2013 00:59:39 +0000
now.utc
# => Wed, 03 Jul 2013 00:04:19 +0000
您可以看到now
实际上早于past
。