让mySQL date_format在PHP中显示

时间:2009-08-07 15:08:58

标签: php mysql date-format

这对许多人来说听起来像是一个非常简单的问题,但我似乎无法获得基本的date_format来处理我的mySQL语句然后使用php显示。这是我目前的代码:

$result = mysql_query("SELECT *, DATE_FORMAT('timestamp', '%W %D %M %Y') as date FROM articleDB WHERE userID='".$_SESSION["**"]."' ORDER BY timestamp DESC LIMIT 8");

然后尝试使用以下方式显示它:

echo ' Posted: '.$row['timestamp'].''; 

我想要的只是将PHP myAdmin时间戳的日期格式化为我想要的格式。

干杯

3 个答案:

答案 0 :(得分:7)

在查询字段周围使用反引号(``) or nothing at all instead of single-quotes ('`):

$result = mysql_query("SELECT *, DATE_FORMAT(`timestamp`, '%W %D %M %Y') as date FROM articleDB WHERE userID='".$_SESSION["**"]."' ORDER BY timestamp DESC LIMIT 8");

反引号(“) creates a reference to a table member, single-quotes creates a string (). You were basically trying to DATE_FORMAT the string'timestamp'`而不是字段。

此外,由于您使用as创建字段别名,因此您希望在输出时使用别名引用该字段:

echo ' Posted: '.$row['date'];

答案 1 :(得分:2)

您需要在select语句中显示您计算/格式化的“日期”列,时间戳列包含未格式化的原始日期值。

echo ' Posted: '.$row['date'];

答案 2 :(得分:0)

因为在您的SQL查询中,您定义了as date访问它的日期格式$row['date']