如何格式化来自MYSQL的日期

时间:2009-10-24 22:41:46

标签: php mysql date

简单的问题,但我需要它:)

  $query = "SELECT * 
FROM  `set` 
WHERE ID = '$id'";

$result = mysql_query($query);
$info = mysql_fetch_assoc($result);

$frmdate = $info['date'];

到目前为止,我试过

$timestamp = strtotime($info['date']);
$joined_date = date("j M. Y", $timestamp);

但没有运气!

mysql中的

“date”字段是DATE数据类型

我想让它像“2009年10月23日”

我该怎么做?

由于

2 个答案:

答案 0 :(得分:2)

您可以使用strtotime将日期的字符串表示转换为时间戳,然后您可以使用date将时间戳转换为您喜欢的任何格式:

$timestamp = strtotime($frmdate);
$formatted_date = date("j M. Y", $timestamp);

您还可以使用以下方法将翻译从yyyy-mm-dd格式移动到查询本身的时间戳:

select unix_timestamp(field_name) as field_name_timestamp

答案 1 :(得分:1)

您可以在MySQL数据库服务器中格式化日期。

SELECT  *, DATE_FORMAT( date, '%e %b. %Y' ) AS formatted_date
FROM    `set` 
WHERE   ID = '$id'

然后你只需要修改你的客户端php代码,只需使用$info['formatted_date']中数据库调用返回的字符串。如果您不想在月份的前导零处,请使用“d”代替格式字符串中的“e”。