[英]Database time format change
對於我的數據庫時間,我有以下幾點:
date_default_timezone_set('Canada/Mountain');
$comment_date = date('m/d/Y h:i:s a', time());
$data = array(
'comment_date' => $comment_date
);
但是我得到的是0000-00-00 00:00:00
作為結果。
我試圖以“ 1分鍾”或“ 20小時”或“ 4天”的格式顯示時間。
我該如何實現?
原因是PHP不支持Canda/Mountain
時區。
有關支持的時區的列表,請參見參考資料 。
看起來您可能正在使用MySQL。 假設改變
$comment_date = date('m/d/Y h:i:s a', time());
至
$comment_date = date('Ymd h:i:s');
並將其保存到數據庫時應保留正確的日期。 原因是MySQL希望日期時間采用后一種格式。
我不確定I am trying to show the time in "1 min" or "20 hr" or "4 days" format
什么意思。 從數據庫中提取日期時,可以使用MySQL DATE_FORMAT()函數格式化日期。 有關如何執行此操作的詳細信息,請參見http://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html#function_date-format 。
您需要兩個修復程序。 首先是時區,因為您使用的是無效時區。 首選時區可能是加拿大/薩斯喀徹溫省。 (通過在此處查看受支持區域的列表,根據您的區域進行更改)
其次,對於MySQL使用無效的日期格式。 最后,您的代碼應如下所示:
date_default_timezone_set('Canada/Saskatchewan');
$comment_date = date('Y-m-d H:i:s', time());
$data = array(
'comment_date' => $comment_date
);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.