使用mysql数据库在php中获取格式化日期

时间:2013-03-22 06:07:47

标签: php mysql sql

我想从mysql数据库获取格式化日期,例如2013年3月21日上午11:21

6 个答案:

答案 0 :(得分:4)

您可以使用MySQL的内置函数DATE_FORMAT()

SELECT DATE_FORMAT(NOW(), '%D %M %Y %h:%i%p')

输出

╔═════════════════════════╗
║     FORMATTED_DATE      ║
╠═════════════════════════╣
║ 22nd March 2013 06:07AM ║
╚═════════════════════════╝

答案 1 :(得分:1)

您可以使用DATE_FORMAT MySQL功能。

示例

DATE_FORMAT(NOW(),'DATEFORMATE') // DATEFORMATE can be %b %d %Y %h:%i %p

STR_TO_DATE('$date', 'DATEFORMATE')

如何在查询中使用

SELECT STR_TO_DATE('YOUR DATE FIELD','DATEFORMAT') FROM table;

SELECT DATE_FORMAT(NOW(),'DATEFORMAT') FROM table;

DATEFORMATE Options

答案 2 :(得分:1)

为什么不使用MySQL's DATE_FORMAT

对于您的示例,将其添加到MySQL查询中:

DATE_FORMAT(my_date, '%e %M %Y %h:%i %p')

答案 3 :(得分:1)

使用DATE_FORMAT()

SELECT * FROM table DATA_FORMAT(NOW(), '%D %M %Y %h:%i%p')

DATE_FORMAT

上的教程

答案 4 :(得分:0)

您的数据库列的格式是什么?如果它是UNIX时间戳,只需将其输入date即可。如果它是一个日期列(格式为' YYYY-MM-DD'或' YYYY-MM-DD HH:MM:SS'),请将其输入{{1}然后进入strtotime

所以,假设它是一个日期列,你想要做这样的事情:

date

有关如何使用$column_value = "2013-03-01 00:00:00"; // Get this from your database however you like $formatted_date = date("jS F Y H:i A", strtotime($column_value)); 进行格式化的文档位于the PHP documentation.

答案 5 :(得分:0)

试试这个:

$date   = date from databse // some thing like 2013-03-22 11:38:00

$dt     = new DateTime($date);
echo $dt->format('jS  F Y g:ia');

输出:22nd March 2013 11:38am

参考:http://www.php.net/manual/en/datetime.format.php