我想要以年和日而不是月为单位的两个日期结果之间的差异
我尝试过如下
$date1 = new DateTime("2023-01-01");
$date2 = new DateTime("2024-04-10");
$difference = date_diff($date1, $date2);
$years = $difference->y;
$months = $difference->m;
$days = $difference->d;
echo "$years Years";
echo "<br />";
echo "$months month";
echo "<br />";
echo "$days days";
得到的结果为
1 年 3个月 9天
我需要的结果是
1 年 101天
任何人都可以帮忙吗?
我尝试了很多方法,但没有一个有效
我终于做到了。我通过下面的代码得到了预期的结果
$date1 = new DateTime("2023-01-01");
$date2 = new DateTime("2024-04-10");
$difference = date_diff($date1, $date2);
$years = $difference->y;
// Calculate total days without including the years
$date1_copy = clone $date1;
$date1_copy->modify("+$years years");
$daysDifference = ($date1_copy->diff($date2)->days)+1;
echo "$years Years";
echo "<br />";
echo "$daysDifference Days";