2015-12-01 70 views
4

我的數據庫表中有一個TYPE = timestamp的行。所以保存的日期格式是這樣的:在MYSQL中重新格式化日期以PHP輸出

2015年11月30日14時54分04秒

我GOOGLE了它,並說這是MYSQL的默認的時間戳。我怎樣才能迴應這個日期在PHP中使用這種格式:

2015年11月30日下午2時54分04秒

注:我在一個循環中運行這和檢索的數據包括在此日期在整個表中,所以這個日期的回聲是$feeds->reg_date。我希望我的問題很清楚。

回答

3

你可以做這樣的事情:

$dt = "2015-11-30 14:54:04"; 
$unixdatetime = strtotime($dt); 
$formatted_date = strftime("%B %d, %Y %I:%M:%S %p",$unixdatetime); 
echo $formatted_date; // output: November 30, 2015 02:54:04 PM 

編輯:

$unixdatetime = strtotime($feeds->reg_date); 
$formatted_date = strftime("%B %d, %Y %I:%M:%S %p",$unixdatetime); 
echo $formatted_date; 

重新編輯

if(DateTime::createFromFormat('d/m/Y H:i:s', $feeds->reg_date)){ 
    $unixdatetime = DateTime::createFromFormat('d/m/Y H:i:s', $feeds->reg_date)->getTimestamp(); 
}else{ 
    $unixdatetime = strtotime($feeds->reg_date); 
} 
$formatted_date = strftime("%B %d, %Y %I:%M:%S %p",$unixdatetime); 
echo $formatted_date; 
+0

謝謝!如果這是保存的日期格式呢?14/11/2015 20:49:22? –

+0

我的意思是,我有一個不同的表,具有這種格式的日期,14/11/2015 20:49:22。我如何使用PHP輸出這種格式,2015年11月14日8:49:22 PM? –

+0

@PaoloMedina如果日期時間以MySQL格式保存,例如Y-m-d H:i:s,則這將起作用。既然你是從數據庫中獲取日期時間,它應該適合你。 –

0

您可以使用date()strtotime()

$date = date('F d, Y h:i:s A', strtotime($row["date"])); 

請檢查此link以獲取更多日期格式。

1

有一個PHP語法,如Date('m-d-y'));您只需要通過使用該功能來更改顯示日期的格式。