2009-10-02 56 views
0

我希望有一個函數可以顯示從特殊日期開始已經過去多少個月 - 如果可能的話使用小數。
任何人都有如何使它的想法? (在PHP)

最後我做了以下內容:
$var = ((mktime(0,0,0,8,3,2009) - mktime(0,0,0,9,3,2009))/86400/30.4368499);
你的答案是有幫助的。詹姆斯古德金斯是我領導的這個人,所以他得到了「答案解決」的標誌。自特殊日期起的月份(十進制)

+1

根據日曆或僅*天數*/30的月數? – Gumbo 2009-10-02 14:43:52

回答

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; 
} 
+0

謝謝。你的回答是讓我找到解決方案的人。 – johankj 2009-10-03 17:39:07

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]); 
} 

雖然沒有確認就可以了,當然。