【发布时间】:2013-12-24 15:07:47
【问题描述】:
我想在 php 中找到 2 个日期之间的差异。但我没有得到确切的差异。 请帮我。 我必须得到的输出是“2 年 0 个月 0 天”。 但我得到的是“1 年 12 个月零 4 天”。 我哪里错了?
$createddate="2015-12-24";
//find difference between the dates present-createddate of user
$now = time(); // present time
$your_date = strtotime($createddate);
$difference = abs($now - $your_date);
echo $difference;
// Years, months and days version
$years = floor($difference / (365*60*60*24));
//echo $years;
$months = floor(($difference - $years * 365*60*60*24) / (30*60*60*24));
//echo $months;
$days = floor(($difference - $years * 365*60*60*24 - $months*30*60*60*24)/ (60*60*24));
//echo $days;
$membersince .= $years.' years '.$months.' months and '.$days.' days';
【问题讨论】:
-
使用 DateTime 对象和 diff() 方法。这被问了很多。我很快就会找到一个重复的......你也应该这样做。
-
Comparing two dates 的可能重复项
标签: php date strtotime date-math