PHP date_sub。今天和日期不能减少

时间:2016-09-12 15:40:20

标签: php date datediff

我正在尝试输出今天和我输入的日期之间的天数,所以我遇到问题我遇到错误:"警告:date_diff()期望参数2是DateTimeInterface"那么问题是什么?



<?php

$today=date("y-m-d");
$date=date_create("2016-09-16");

echo date_diff($date,$today);

?>
&#13;
&#13;
&#13;

1 个答案:

答案 0 :(得分:2)

您的问题在于,在使用date_diff时,您必须确保您正在比较实际日期对象的对象。 date_diff的返回类型也是DateInterval对象。你把它当作一个字符串。

$today = new DateTime(); // $today is a DateTime object
$date = new DateTime("2016-09-16"); // $date is also a DateTime object!
$diff =  date_diff($date,$today); // compare two objects of the same type FTW!

echo $diff->days; // $diff is a DateInterval object, so echo it's 'days' property.

// output: 3 (as of this writing)

进一步阅读:
http://php.net/manual/en/class.dateinterval.php
http://php.net/manual/en/class.datetime.php
http://php.net/manual/en/function.date-diff.php