更改Fetch mysql上的日期格式

时间:2011-12-21 13:21:44

标签: php mysql

例如。

在“date_account_created”字段中,它存储格式为“2011-12-21 03:34:21”的日期

那没关系......

但是当我在PHP中获取它时,我需要:

1)不要打印时钟“03:34:21”

2)我想打印DD-MM-YYYY而不是YYYY-MM-DD

这件事有可能吗?

3 个答案:

答案 0 :(得分:7)

您不会在获取时更改它,而是在使用DATE_FORMAT()

查询时更改它
SELECT
  DATE_FORMAT(date_account_created, '%d-%m-%Y') AS date_account_created
FROM table...

也就是说,除非您需要在PHP中使用多种不同格式的日期。在这种情况下,将它选择为UNIX时间戳可能更简单,可以在PHP中进行本机操作,而无需通过strtotime()进行转换。仅当您打算在PHP应用程序代码中使用多种不同格式的日期时,才建议使用此方法。如果您只使用一种格式,则在查询中使用DATE_FORMAT()会更简单。

SELECT UNIX_TIMESTAMP(date_account_created) AS date_account_created FROM table...

然后在php中操作:

// Already fetched into $date_account_created
echo date("d-m-Y", $date_account_created);

答案 1 :(得分:1)

您可以在sql fetch request中重新格式化日期

  

DATE_FORMAT(日期,'%d-%m-%Y')AS new_date

答案 2 :(得分:0)

阅读手册: http://dev.mysql.com/doc/refman/4.1/en/date-and-time-functions.html#function_date-format

mysql> SELECT DATE_FORMAT('2009-10-04 22:23:00', '%W %M %Y');
        -> 'Sunday October 2009'