1

我有一个 PHP 应用程序,我必须在其中比较两个日期

$interval = date("Y-m-d",time()) - date("2013-07-1");

但是,它总是0作为 的值返回$interval

如何修改代码以解决问题?

4

3 回答 3

5

请尝试使用 DateTime。示例代码在这里

<?PHP
    $datetime1 = date_create('2013-07-3');
    $datetime2 = date_create();
    $interval = date_diff($datetime1, $datetime2);
    echo $interval->format('%D %M %Y');
?>
于 2013-07-05T21:29:02.157 回答
1

如果您使用的是 PHP >= 5.2,请尝试使用 DateTime 类:

$interval = date_diff(new DateTime(), new DateTime('2013-07-3'));
$days = $interval->days;
于 2013-07-05T21:34:29.173 回答
0

我认为最好在日期时间值中工作 - 自(我认为)1970 年 1 月 1 日以来的第二个整数表示?

无论如何,穆罕默德是非常正确的,除了我不认为你想把你的结果改回日期。

依照:

$interval=time()-strtotime("2013-07-1");
// $interval will therefore hold the number of seconds difference between the dates.

将 $interval 除以 60、3600、(24*3600) 得到分钟、小时或天。

于 2013-07-05T21:34:56.800 回答