php class DateInterval 的对象无法转换为字符串

php Object of class DateInterval could not be converted to string

我试过使用 date_diff 和 date_create 来区分两个已经转换为字符串的日期。

代码如下:

$date_1 = date_create();
$date_now = date_format($date_1, 'Y-m-d');


//echo $date_now . "\n";
$date=date_create($date_now);
date_add($date,date_interval_create_from_date_string("3 days"));
$date_return =  date_format($date,"Y-m-d");


$diff = date_diff(date_create($date_now), date_create($date_return));

echo $diff;

我收到这个错误:

Object of class DateInterval could not be converted to string

您需要调用 DateInterval::format() 以将差异显示为字符串。

echo $diff->format('%d days');

有关所有可用的格式设置选项,请参阅手册。

使用 Carbon(DateTime 的简单 PHP API 扩展)可能是这样的

   $date_now->diffInDays($date_return);

希望这对您有所帮助。但要获得有关 Carbon 的更多信息,请遵循此 link Carbon Docs