Existe en la clase
DateTime, el método
diff
Código PHP:
Ver original<?php
class DateDiff{
public static function getDiff($datetime1, $datetime2){
$d1 = new DateTime($datetime1);
$d2 = new DateTime($datetime2);
$interval = $d1->diff($d2);
return $interval->format('%y años %m meses %d días');
}
}
echo DateDiff::getDiff('2011-05-18', '2011-05-11'); // imprime 0 años 0 meses 7 días
echo DateDiff::getDiff('2011-01-18', '2011-05-18'); // imprime 0 años 4 meses 0 días
echo DateDiff::getDiff('2005-05-18', '2011-05-18'); // imprime 6 años 0 meses 0 días
echo DateDiff::getDiff('2005-01-11', '2011-05-18'); // imprime 6 años 4 meses 7 días