2016-09-15 56 views

回答

0

这是否会做你想要什么?

Time.now.utc.midnight.to_i 

Time.now获取当前本地时间,#utc套它UTC,#midnight将其设置到以前的午夜,#to_i其转换到图章。希望有所帮助!

https://ruby-doc.org/core-2.3.0/Time.html

+3

Ruby没有内置的'midnight'方法。 –

0

因为正好86400每天UNIX时间戳的增加,你可以通过计算午夜:

Time.now.utc.to_i/86400 * 86400 
#=> 1473984000 

或者:

t = Time.now.utc.to_i 
#=> 1474011313 

t - t % 86400 
#=> 1473984000 
+0

相关的#37在http://infiniteundo.com/post/25509354022/more-falsehoods-programmers-believe-about-time – Nakilon

+0

@Nakilon我的答案适用于_UNIX time_。我并不是说每天都有86,400秒。如果你不相信它:'17000.times {| i |放入Time.at(i * 86400).utc}' – Stefan