如何在PHP中将time()字符串格式化为Unix时间戳

时间:2013-03-19 12:12:19

标签: php mysql sql

我将time()字符串存储到我的数据库中,如1363694642
现在我只想打印像19-03-2013 17:40:39

这样的刺痛

我已使用date('d-M-Y H:i:s', strtotime($row['time'])),但在每个查询中都会返回31-Dec-1969 17:00:00

请帮我解决。

4 个答案:

答案 0 :(得分:5)

date函数需要时间戳,因此您不必使用strtotime,因为您已经有来自数据库的时间戳:

date('d-m-Y H:i:s', $row['time'])

请注意,我已在格式字符串中将M替换为m。这是因为M表示一个月的短文本表示,三个字母,您只需要一个数字。

答案 1 :(得分:0)

只需使用此

date('d-M-Y H:i:s', $row['time']);

答案 2 :(得分:0)

你不需要使用strtotime函数,因为time()返回时间戳值本身:

使用:date('d-m-Y H:i:s', $row['time'])

了解详情http://php.net/manual/en/function.date.php

答案 3 :(得分:0)

MySQL已经能为您做到这一点:

SELECT FROM_UNIXTIME(`time`)
FROM ...

或者:

SELECT FROM_UNIXTIME(`time`, '%D-%M-%Y %h:%i:%s')
FROM ...

另请参阅:FROM_UNIXTIME