从那天的一天到周四10:00获取秒数

时间:2015-09-09 10:15:49

标签: ruby time

如何获得该周从当天10:00到星期四的秒数?如果晚于周四10:00,我想得到零。例如:

seconds = (Thursday 10:00) - Time.now

3 个答案:

答案 0 :(得分:3)

使用Chronic

require 'chronic'

Chronic.parse('this Thursday at 10:00 am') - Time.now

#=> 98688.251918432

答案 1 :(得分:2)

您可以减去两次以获得秒数差异(see docs):

require 'time'
Time.parse(end_time) - Time.parse(time)
# => 57600.0

<强>更新

要计算两次获得两个固定时间之间的差异是绝对必须的。只需在几秒钟内将数字时差添加到现有时间,您就可以获得下周的时间。这里:

next_week_time = Time.parse(end_time) + (1*7*24*60*60)

或者如果您使用的是Rails,使用ActiveSupport可以执行以下操作:

next_week_time = Time.parse(end_time) + 1.weeks

答案 2 :(得分:0)

(4-Time.now.wday-1)*24*3600:获取从一天上午到周四的天数。

Time.now.seconds_until_end_of_day:获取当天的剩余时间。

seconds = (4-Time.now.wday-1)*24*3600 + Time.now.seconds_until_end_of_day + 10*3600
seconds = seconds > 0 ? seconds : 0