我希望有一个函数可以显示自特殊日期以来已经过了多少个月 - 如果可能的话还会带小数。
任何人都知道如何制作它? (在PHP中)
我最终做了以下事情:
$var = ((mktime(0,0,0,8,3,2009) - mktime(0,0,0,9,3,2009))/86400/30.4368499);
你的答案很有帮助。詹姆斯古德温斯是带领我的人,所以他得到了“答案解决”的标记。
答案 0 :(得分:1)
function dateDiff($dformat, $endDate, $beginDate)
{
$date_parts1=explode($dformat, $beginDate);
$date_parts2=explode($dformat, $endDate);
$start_date=gregoriantojd($date_parts1[0], $date_parts1[1], $date_parts1[2]);
$end_date=gregoriantojd($date_parts2[0], $date_parts2[1], $date_parts2[2]);
return $end_date - $start_date;
}
答案 1 :(得分:1)
试试这个:
echo NumberOfMonths(strtotime('2009-10-02'),strtotime('2008-12-02'));
function NumberOfMonths($date1, $date2) {
$dates = array(explode(' ',date('Y n',$date1)),explode(' ',date('Y n',$date2)));
return ($dates[0][0]-$dates[1][0])*12+($dates[0][1]-$dates[1][1]);
}
虽然当然没有对它进行验证。