获取上周三午夜的unix时间戳

时间:2009-07-21 20:07:15

标签: php datetime unix-timestamp

如何查找上周三午夜的unix时间戳?我唯一的方法是获取今天的日期指数和日期数,并减去差异,但我可以想到几种情况会失败,例如,在星期三发生之前的一个月内。

我想,更简洁一点,我怎样才能找到上周三的日期?

任何帮助都将不胜感激。

3 个答案:

答案 0 :(得分:5)

strtotime怎么办?

$timestamp = strtotime("last Wednesday");

var_dump($timestamp);
var_dump(date('Y-m-d H:i:s', $timestamp)); // to verify

你得到这个输出:

int 1247608800
string '2009-07-15 00:00:00' (length=19)

确实是上周三,午夜。

答案 1 :(得分:4)

比你想象的要容易得多......观察这个完全可操作的战斗站的强大火力,呃,我的意思是strtotime

$t=strtotime("last wednesday");

echo strftime("%d %b %Y %H:%M:%S", $t);

这将输出

15 Jul 2009 00:00:00

在撰写本文时,这是上周三:)

答案 2 :(得分:0)

你想成为多么“正确”?如果您想要高度正确,则需要考虑夏令时,时区,闰年等。这意味着使用库而不仅仅是减去日期索引。

我目前没有使用PHP,但我曾经对Pear库运气好: 这是Calendar类的docs

相关问题