我有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无法识别原始日期格式,因为它返回了我1969年的日期。
答案 0 :(得分:2)
将其分解为多个部分,然后从这些部分中形成有效的日期。然后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));