正确显示mysql时间戳

时间:2009-07-13 11:04:32

标签: php mysql timestamp

嘿我正在尝试使用以下方式显示时间戳字段中的日期/时间:

echo $date = date( "D F j", $row['date'] );

然而它返回:12月3日星期三 什么时候应该今天回来:7月13日星期一

数据库行的时间戳为:2009-07-13 04:16:31

感谢。

2 个答案:

答案 0 :(得分:4)

你应该使用

SELECT UNIX_TIMESTAMP(`date`) AS `date` FROM ...

这将为您提供正确格式的日期,以传递给PHP的date()函数。

编辑:

SELECT *, UNIX_TIMESTAMP(`date`) AS `date` FROM songs WHERE date >= DATE_SUB( NOW( ) , INTERVAL 2 WEEK )

作为附注 - 最好避免在查询中使用NOW(),因为它会阻止它们被缓存 - 而是在应用程序中注入日期。

答案 1 :(得分:1)

也可能:

$date = date( "D F j", strtotime( $row['date'] ) );

但格雷格的解决方案是更好的编码。