2014-06-06 46 views
0

我從數據導入和Excel工作表和日期的格式,像這樣:轉換日期字符串格式正確

May 5, 2014

我需要將其轉換爲像一個真正的PHP日期格式:

Y-m-d

這不是工作:

$new_date = date('Y-m-d', strtotime('May 5, 2014')); 
echo $new_date; 

結果 1969-12-31

我想,我可以做這樣的事情:

$old_date = 'May 5, 2014'; 
$old_date = str_replace(',', '', $old_date); 
$old_date_parts = explode(' ',$old_date); 

// Convert month name to number 
$may = '5'; 

// Build new date 
$new_date = $old_date_parts[2].'-'.$may.'-'.$old_date_parts[1]; 

但必須有另一種方式!

請幫忙。先謝謝你。

編輯

看來,我是用不具有串行日期轉換爲UNIX時間的函數PHPExcel,所以我用這個。

UNIX_DATE = (EXCEL_DATE - 25569) * 86400 

回答

2
$date = date_create_from_format('M j, Y', 'May 5, 2014'); 
echo date_format($date, 'Y-m-d'); 

或者OOP風格

$date = DateTime::createFromFormat('M j, Y', 'May 5, 2014'); 
echo $date->format('Y-m-d'); 
相關問題