Posto questa funzione che aveva fornito ipnotic qualche tempo fa che è molto utile.
	Codice PHP:
	
<?php 
/** 
* La funzione calcola la differenza tra due date 
* in formato UNIX TimeStamp 
* restituendo in output i giorni, le ore, i minuti e i secondi 
* di differenza (di default, restituisce i giorni) 
*/ 
function fDateDiff($dateFrom, $dateTo, $unit = 'd') 
{ 
    $difference = null; 
      
    $date1 = $dateFrom; 
    $date2 = $dateTo; 
      
    if( $date1 > $date2 ){ 
        return null; 
    } 
      
    $diff = $date2 - $date1; 
      
    $days = 0; 
    $hours = 0; 
    $minutes = 0; 
    $seconds = 0; 
      
    if ($diff % 86400 <= 0){ // Ci sono 86400 secondi in un giorno 
        $days = $diff / 86400; 
    } 
      
    if($diff % 86400 > 0){ 
        $rest = ($diff % 86400); 
        $days = ($diff - $rest) / 86400; 
          
        if($rest % 3600 > 0 ){ 
            $rest1 = ($rest % 3600); 
            $hours = ($rest - $rest1) / 3600; 
              
            if( $rest1 % 60 > 0 ){ 
                $rest2 = ($rest1 % 60); 
                $minutes = ($rest1 - $rest2) / 60; 
                $seconds = $rest2; 
            }else{ 
                $minutes = $rest1 / 60; 
            } 
        }else{ 
            $hours = $rest / 3600; 
        } 
    } 
      
    //In quel unità restituire 
    //la differenza ? 
    switch(strtolower($unit)){ 
        case 'd': 
            $partialDays = 0; 
            $partialDays += ($seconds / 86400); 
            $partialDays += ($minutes / 1440); 
            $partialDays += ($hours / 24); 
            $difference = $days + $partialDays; 
            break; 
              
        case 'h': 
            $partialHours = 0; 
            $partialHours += ($seconds / 3600); 
            $partialHours += ($minutes / 60); 
            $difference = $hours + ($days * 24) + $partialHours; 
            break; 
              
        case 'm': 
            $partialMinutes = 0; 
            $partialMinutes += ($seconds / 60); 
            $difference = $minutes + ($days * 1440) + ($hours * 60) + $partialMinutes; 
            break; 
              
        case 's': 
            $difference = $seconds + ($days * 86400) + ($hours * 3600) + ($minutes * 60); 
            break; 
              
        case 'a': 
            $difference = array ( 
                "days" => $days, 
                "hours" => $hours, 
                "minutes" => $minutes, 
                "seconds" => $seconds 
                 ); 
            break; 
    } 
      
    //Ritorno la differenza 
    if(is_array($difference)){ 
        return $difference; 
    }else{ 
        return round($difference); 
    } 
      
} 
// Esempio
echo fDateDiff(1111273200, 1111359600, $unit = 'm') 
?>