4

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

到目前为止,我想出的是:

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

2 回答 2

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
于 2011-11-15T13:03:29.213 回答
2
require 'date'
Date.today.to_time - 1  #=> 2011-11-14 23:59:59
于 2011-11-15T13:10:15.927 回答