[英]How to format the date in PHP and SQL?
我的一個表中有一個名為“publicationDate”的字段,其數據類型是date
。 但是,當我創建一個應該顯示今天日期的查詢時,我遇到了如何格式化它的問題。 它總是顯示0000-00-00
。
這是我的變量:
$today = date("F j, Y, g:i a");
這是我的查詢:
$query = "INSERT INTO articles (summary, publicationDate) VALUES ('{$content}', '{$today}')";
我究竟做錯了什么?
嘗試這個:
$today = date("Y-m-d");
// 2011-09-24
你的字符串返回:
$today = date("F j, Y, g:i a");
// September 24, 2011, 6:39 am
編輯:
要保存日期和時間,您可以使用日期時間或時間戳:
$today = time(); // timestamp
將數據庫字段更改為時間戳。
要么
$today = date("Y-m-d H:i:s"); // datetime
將數據庫字段更改為datetime。
要從數據庫中選擇數據,您可以:
$result = mysql_query("SELECT date FROM table");
$row = mysql_fetch_array($result);
// field is timestamp
echo date("F j, Y, g:i a", $row['date']);
// or
// field is datetime
echo date("F j, Y, g:i a", strtotime($row['date']));
$today = date("Y-m-d");
這是插入MySQL的正確格式。
如果publicationDate
列的類型為DATE
(它應該是真的),則需要以MySql識別的格式之一格式化日期,而不是人類可讀的字符串。
其中,最常見的是date("Ymd")
或date("Ymd")
如果你喜歡連字符。
請改用它
$today = date("Y-m-d");
MySQL日期僅存儲日期而不是YYYY-MM-DD等時間
如果您還想存儲時間,可以使用DATETIME字段:YYYY-MM-DD HH:MM:SS或者您可以將時間戳存儲為字符串。
該值應為字符串,格式為MySQL的格式:Ymd。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.