在PHP中将日期从YYYYMMDD转换为DD / MM / YYYY格式

时间:2012-12-26 19:07:22

标签: php date

我有一个MySQL数据库表,其中日期以YYYYMMDD格式存储。例如:20121226。

我想以DD / MM / YYYY格式显示此日期。例如:26/12/2012

我想出的是使用substr分别提取日,月和年。 我想知道是否有更简单的方法来做到这一点。

此外,有没有办法将此日期转换为“2012年12月26日”格式,而无需编写单独的代码?

3 个答案:

答案 0 :(得分:21)

您可以轻松使用DateTime类来执行此操作

$retrieved = '20121226';
$date = DateTime::createFromFormat('Ymd', $retrieved);
echo $date->format('d/m/Y');

http://php.net/manual/en/datetime.format.php

答案 1 :(得分:3)

在SQL语句中,您可以不同地格式化日期。

SELECT DATE_FORMAT(date_column, '%d/%m/%Y') AS my_date FROM my_table

答案 2 :(得分:2)

这是解决方案:

SELECT DATE_FORMAT('20121226', '%d/%m/%Y');

=>

DATE_FORMAT('20121226', '%d/%m/%Y')
26/12/2012

OR

SELECT DATE_FORMAT('20121226', '%W %M %Y');

=>

DATE_FORMAT('20121226', '%W %M %Y')
Wednesday December 2012

选中此格式以获取更多格式: http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html#function_date-format