calculo errado ao tranformar timestamp em quantidade de dias e horas
estou utilizando esta funçaõzinha para retornar a quantidade de meses, dias, semanas, horas e segundos, mas nao sei o que estou fazendo de errado. Na data de exemplo era para dar 2 meses, mas sempre retorna como 2 semanas e 3 dias
>
<?
$epoch_1 = mktime(13,00,00,3,1,2015);
$epoch_2 = mktime(13,00,00,1,1,2015);
$diff_seconds = $epoch_1 - $epoch_2;
$diff_months = floor($diff_seconds/18144000);
$diff_seconds -= $diff_months * 18144000;
$diff_weeks = floor($diff_seconds/604800);
$diff_seconds -= $diff_weeks * 604800;
$diff_days = floor($diff_seconds/86400);
$diff_seconds -= $diff_days * 86400;
$diff_hours = floor($diff_seconds/3600);
$diff_seconds -= $diff_hours * 3600;
$diff_minutes = floor($diff_seconds/60);
$diff_seconds -= $diff_minutes * 60;
print "As duas datas têm $diff_months meses, $diff_weeks semanas, $diff_days dias, ";
print "$diff_hours horas, $diff_minutes minutos e $diff_seconds ";
print "segundos de diferença.";
?>
saida é As duas datas têm 0 meses, 8 semanas, 3 dias, 1 horas, 0 minutos e 0 segundos de diferença.
Discussão (3)
Carregando comentários...