【发布时间】:2009-07-13 11:04:31
【问题描述】:
嘿,我正在尝试使用时间戳字段显示日期/时间:
echo $date = date( "D F j", $row['date'] );
但它会返回:12 月 3 日星期三 今天应该返回的时间:7 月 13 日星期一
数据库行的时间戳为:2009-07-13 04:16:31
谢谢。
【问题讨论】:
嘿,我正在尝试使用时间戳字段显示日期/时间:
echo $date = date( "D F j", $row['date'] );
但它会返回:12 月 3 日星期三 今天应该返回的时间:7 月 13 日星期一
数据库行的时间戳为:2009-07-13 04:16:31
谢谢。
【问题讨论】:
你应该使用
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(),因为它会阻止它们被缓存 - 而是在您的应用程序中注入日期。
【讨论】:
也可以:
$date = date( "D F j", strtotime( $row['date'] ) );
但 Greg 的解决方案是更好的编码。
【讨论】: