date('F Y', strtotime('2013-05-00T00:00:00'));
返回值'April 2013'
,但我希望它返回'May 2013'
。
这是date()
将日期字符串解释为仍在四月还是格式字符串的问题?我试过'M Y'
了,还是给了我'Apr 2013'
。有替代方案吗?
date('F Y', strtotime('2013-05-00T00:00:00'));
返回值'April 2013'
,但我希望它返回'May 2013'
。
这是date()
将日期字符串解释为仍在四月还是格式字符串的问题?我试过'M Y'
了,还是给了我'Apr 2013'
。有替代方案吗?
日期适用于时间戳而不是日期的文本表示
如果您将月份中的某一天的 0 更改为 1(从而获得有效的开始日期)并使用 strtotime
date('F Y', strtotime('2013-05-01T00:00:00'));
然后它会工作
PHP 将 0 月的一天解释为上个月的最后一天。
日期的有效值为 01-31
echo date('d F Y', mktime(0, 0, 0, 5, 0, 2013)); //30 April 2013
echo date('d F Y', mktime(0, 0, 0, 5, 1, 2013)); // 01 May 2013
date('F Y', strtotime('2013-05-00T00:00:00'));
0
不是有效的开始日期。您必须将其分配给1
. 然后它将按您的预期工作。
date('F Y', strtotime('2013-05-01T00:00:00'));