2015-05-15 108 views
1

我有一個ymd格式的日期。例如,對於2014年5月28日我其實有:140528.使用strtotime PHP日期轉換

我想將其轉換爲日期(C「)格式舉例:2014-05-28T00:00:00-04:00

我不能使用的DateTime :: createFromFormat的,因爲我的PHP版本,所以不是我想的strtotime,但沒有成功:因爲它返回我1969年的日期

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

的strtotime是不承認原來的日期格式

回答

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)); 

Demo

+0

效果很好,謝謝!不喜歡硬編碼的「20」位,但我想它會在未來85年。 – Clement