Per coloro che cercano di ottenere un'uscita amichevole (giorni, ore, minuti, secondi) Condivido il mio codice qui:
function _getDelay($since) {
$timeNow = new Zend_Date();
$timeThen = new Zend_Date($since);
$difference = $timeNow->sub($timeThen);
return $difference->toValue();
}
function _friendlySeconds($allSecs) {
$seconds = $allSecs % 60; $allMinutes = ($allSecs - $seconds)/60;
$minutes = $allMinutes % 60; $allHours = ($allMinutes - $minutes)/60;
$hours = $allHours % 24; $allDays = ($allHours - $hours)/24;
return ($allDays > 0 ? $allDays . "d" : "") .
($hours > 0 ? $hours . "h" : "") .
($minutes > 0 ? $minutes . "m" : "") . $seconds . "s";
}
Basta chiamare questo qualcosa come come:
echo "It happened " . _friendlySeconds(_getDelay('2010-11-18')) . " ago.";
fonte
2011-03-23 11:56:56
Sono sospettare che, poiché il valore restituito è un probabilmente uno Zend_Date il '$ months' var non sarà mai più di 12 ... (o 11 , se è basato su 0) –