转发:
我浏览了关于这件事的现有问题/答案。这不是一个口是心非的问题;我无法从公认的答案中找到有效的解决方案。
我复习过的主要问题/答案可以在这里找到:如何使用PHP计算两个日期之间的差异?
我需要什么:
两个日期之间的差异计算,表示为年、月和天,适用于PHP版本:5.2。
<?php
$current_date = date('d-M-Y');
$future_date = '2012-11-01';
?>
我尝试过的:
- 我在网上找到的大多数答案似乎并不准确,因为它们不是闰年因素
- 这个高评价的答案不起作用,因为DateTime->diff()是php 5.3+
这个已接受的答案(即第二块代码针对PHP 5.2)导致以下内容被解析:
阵列([y]=>25[m]=>11[d]=>7[h]=>3[i]=>15[s]=>19[反转]=>0[days]=>9473)阵列
我不知道我是否错误地应用了代码,或者这只是我不知道如何操作数组的情况。
您在DateTime::diff()
的手册页面上看到这条评论了吗?
我也在做同样的事情。这可能奏效!首先,您需要创建日期。
$date1=date_create("2012-03-15");
$date2=date_create("2013-03-15");
这是手册!然后要找到日期和打印所需结果之间的差异,请使用此!
$dif=date_diff($date1,$date2); //Will calculate the difference between two dates.
$days = $dif->days; //Days
$years = round($age/365); //Converting days to years and rounding them up.
$months = $difference/30; // Converting to months.
echo "Days =>".$days;
echo "Years =>".$years;
echo "Months =>".$months;
现在你得到的答案不会是精确的,因为这里面没有计算闰年的方法,但如果精度不是你想要的,那么这肯定会奏效!我知道这个问题很久以前就被问过了,但在我的辩护中,我刚刚看到了!