2011-11-15 27 views
4

我有以下问题: 我想在特定时间获取昨天的时间戳。Ruby - 时间戳昨天到特定时间

随着我想出到目前为止是:

Time.local(Time.now.strftime("%Y"), Time.now.strftime("%m"), (Time.now.strftime("%d")-1), 23, 59, 59).tv_sec 

我是新来的Ruby所以这可能就是我的Ruby代码看起来很相似,PHP :)

也许这是原因当我说我想在Ruby中使用PHP解决方案时提供帮助:

mktime(23,59,59,date("m",time()),date("d",time()-86400),date("Y",time())); 

回答

4

是否使用Activesupport时出现问题?

require 'active_support' 
Date.yesterday.end_of_day # .to_i to get the timestamp in seconds 
#=> Mon Nov 14 23:59:59 +0100 2011 
+0

最优秀的 '红宝石路' 的答案。 –

+0

这个作品完全谢谢你:D – TehQuila

2
require 'date' 
Date.today.to_time - 1 #=> 2011-11-14 23:59:59