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

2022-08-30 19:51:48

我尝试使用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

答案 1

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

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

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


答案 2

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

   $date_now->diffInDays($date_return);

希望这有帮助。但要获得有关碳的更多信息,请点击此链接 碳文档


推荐