0
    $today = date('Y-m-d H:i:s'); // get date SQL format
    $today = date('Y-m-d H:i:s', strtotime($today)); // get date SQL format¨

    $today = new DateTime($today);
    $compare = new DateTime($row['date']);

    $interval = date_diff($today, $compare);

    echo $interval->format("%H") .'<br>';
    echo $interval->format("%i") .'<br>';
    echo $interval->format("%s") .'<br>';
    die();

Something is very wrong, i want the time difference between a post in my SQL database and NowTime

 $row['date']

is 2013-03-25 14:22:53 inserted as datetime in my table, for some reason i get a odd downcounting output?

4

1 回答 1

0

使用数据库查询来做到这一点。

SELECT DATEDIFF(date,NOW()) as DateDifference FROM table

不确定为什么人们一直坚持在 php 而不是 DB 中进行 db 日期比较。它的查询速度更快,资源更少,代码更整洁,然后只需比较结果,因为它会吐出日期的日差。(日期可能是受保护的列名,因此您可能需要将其括在 ` 中或将其更改为不同的列名。

于 2013-03-25T14:26:56.267 回答