beh, personalmente, una volta che hai gli UNIX TimeStamp corrispondenti alla date puoi estrarre direttamente i mesi e gli anni di entrambi:

Codice PHP:
function dateDiff($date1$date2){
    list(
$gg1,$mm1,$yy1)=explode("/",$date1);
    list(
$gg2,$mm2,$yy2)=explode("/",$date2);   
    
$data1 mktime(0,0,0,$mm1,$gg1,$yy1);
    
$data2 mktime(0,0,0,$mm2,$gg2,$yy2);
    
$mese1 date('n'$data1);
    
$mese2 date('n'$data2);
    
$anni1 date('Y'$data1);
    
$anni2 date('Y'$data2);

    
//Qui fai una gabola
    
$rappr1 $mese1 $anni1 12;
    
$rappr2 $mese2 $anni2 12;
    
//Questi valori sono una specie di time stamp, ma con la precisione in mesi
    
$diff $rappr2 $rappr1;
    
$anniDiff floor($diff 12);
    
$mesiDiff $diff $anniDiff 12;
    
//A questo punto di fai quello che vuoi tipo
    
return array("anni" => $anniDiff"mesi" => $mesiDiff);
}

//Chiamando
print_r(dateDiff("15/02/1955""02/05/2006"));
//Ottieni
/*
 * Array ( [anni] => 51 [mesi] => 3 ) 
 * 
 */ 
Ovviamente è abbastanza approssimativo, dato che non è proprio 51 anni e 3 mesi, ma 51 anni, 2 mesi e 15 giorni