时间减去mysql和php

时间:2010-11-28 17:37:53

标签: php mysql

我想在php中找到mysql时间戳和现在的时间之间的时差。

$timesince = strtotime("now") -  $row['DateTime'];

这是我尝试这样做但它似乎不起作用。

另外,理想情况下,我希望输出格式良好,如:34分钟前,2小时5分钟前4天,2天前等等。

真的,非常感谢任何帮助。

2 个答案:

答案 0 :(得分:7)

strtotime("now")返回自Unix纪元以来的秒数,即整数。一个mysql“timestamp”字段将是YYYY-mm-dd HH:mm:ss。您首先需要使这些格式相同。我建议选择mysql时间戳字段为UNIX_TIMESTAMP(DateTime),这样它就会返回一个整数,然后你就可以在几秒钟内得到$timesince

然后,就像@Derek Adair所说,查看PHP Date Object

答案 1 :(得分:2)

查看PHP Date Object

的手册

只需使用date()即可返回当前日期。

尝试类似......

$curDate = date();
$mysqlTimestamp = $row['timestamp'];

$dif = strtotime($curdate) - strtotime($mysqlTimestamp);