PHP 使用 strtotime 进行日期转换

PHP date conversion using strtotime

我有一个 ymd 格式的日期。例如 2014-05-28 我实际上有:140528.

我想将其转换为日期(c") 格式。示例:2014-05-28T00:00:00-04:00

由于我的 php 版本,我无法使用 DateTime::createFromFormat。所以我尝试了 strtotime,但没有成功:

$d[14]="140528";
$deliveryDate = date('ymd', $d[14]);
$d[14] = date("c", strtotime($deliveryDate));

strtotime 无法识别原始日期格式,因为它 returns 我是 1969 年的日期。

将其分解成多个部分,然后从这些部分中形成一个有效日期。那么 strtotime() 就可以了。

$badDate = "140528";
$date = sprintf("20%s-%s-%s",
    substr($badDate, 0, 2),
    substr($badDate, 2, 2),
    substr($badDate, 4, 2)
);

echo date("c", strtotime($date));

Demo