我正在尝试使用php strtotime函数获取各种日期的时间戳但是遇到了问题。例如,试图在3月的第二个星期日之前(例如)获得日期和月份。
我已经进行了一些测试并获得了以下结果:
$day1 = date('j', strtotime('second sunday of march yesterday'));
$month1 = date('n', strtotime('second sunday of march yesterday'));
分别产生28和2,而不是7和3。
我已经移动了“昨天”这个词并获得以下内容:
$day1 = date('j', strtotime('yesterday second sunday of march'));
$month1 = date('n', strtotime('yesterday second sunday of march'));
这确实产生了正确的结果,但是当我这样做时
$day1 = date('j', strtotime('first sunday of november yesterday'));
$month1 = date('n', strtotime('first sunday of november yesterday'));
在这种情况下,在字符串末尾使用“yesterday”,它会生成正确的日期,即31和10。即使“昨天”结束,它也会产生这种结果。
我错过了什么吗?为什么其中一个需要“昨天”才能在字符串的开头?
答案 0 :(得分:2)
这不是yesterday
- 这是+- 1 day
。出于某种原因,-1 day
不起作用。
我不能说昨天PHP正在做什么,但由于英文版没有意义,因此PHP对它的解释也没有意义也就不足为奇了。 ;)