gpt4 book ai didi

ruby-on-rails - 我如何检查 Ruby on Rails 中的当前时间是否在今晚 9 点到早上 9 点(明天)之间

转载 作者:数据小太阳 更新时间:2023-10-29 06:48:24 25 4
gpt4 key购买 nike

我需要检查我的当前时间是否在指定的时间间隔(今晚 9 点到明天早上 9 点)之间。这如何在 Ruby on Rails 中完成。

提前致谢

最佳答案

显然这是一个老问题,已经标有正确答案,但是,我想发布一个可能有助于人们通过搜索找到相同问题的答案。

答案被标记为正确的问题在于,您当前的时间可能已过午夜,而在那个时间点,所提出的解决方案将失败。

这里有一个考虑到这种情况的备选方案。

now = Time.now

if (0..8).cover? now.hour
# Note: you could test for 9:00:00.000
# but we're testing for BEFORE 9am.
# ie. 8:59:59.999
a = now - 1.day
else
a = now
end

start = Time.new a.year, a.month, a.day, 21, 0, 0
b = a + 1.day
stop = Time.new b.year, b.month, b.day, 9, 0, 0

puts (start..stop).cover? now

同样,对于 ruby​​ 1.8.x,使用 include? 而不是 cover?

当然应该升级到 Ruby 2.0

关于ruby-on-rails - 我如何检查 Ruby on Rails 中的当前时间是否在今晚 9 点到早上 9 点(明天)之间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7580734/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com