PHP date()偶尔工作

时间:2014-07-28 09:16:28

标签: php date strtotime date-conversion

我正在将两个字符串从一种日期格式转换为另一种日期格式,但我收到了一些不寻常的回复

我要转换的两个日期是:

1:2002-09-23

2:2010-03-25

每个日期的PHP代码如下:

1:date('d F Y', strtotime((string)$report_display->arr_output_base['Date1']['value']));

2:date("d F Y", strtotime((string)$report_display->arr_input_base['Date2']['value']));

我得到的回复如下:

1:1986年12月31日有时出错,但有时候我会在2002年9月23日这是对的

2:始终是2010年3月25日

1 个答案:

答案 0 :(得分:3)

当您知道格式时,为什么要冒风险将其发送到strtotime并且不使用使用确切格式的正确方法?

$date = DateTime::createFromFormat('Y-m-d', '2002-09-23');
echo $date->format('d F Y');

这样就没有猜测一个月是一个月还是一天。无论如何,这总是会返回相同的日期。