Calcular a diferença entre horas com PHP

Hello peoples! Hola personas! Olá pessoal!

Hoje vou ensinar a criar um pequena função muito útil quando estamos trabalhando com horas. Precisei calcular a diferença entre horas e encontrei este código na web e vou compartilhar com vocês.

<?php

function calcularDiferenca($hora_inicial, $hora_final) {

$i = 1;
$tempo_total;

$tempos = array($hora_final, $hora_inicial);

foreach($tempos as $tempo) {
$segundos = 0;

list($h, $m, $s) = explode(':', $tempo);

$segundos += $h * 3600;
$segundos += $m * 60;
$segundos += $s;

$tempo_total[$i] = $segundos;

$i++;
}
$segundos = $tempo_total[1] - $tempo_total[2];

$horas = floor($segundos / 3600);
$horas = (strlen($horas) == 1) ? "0".$horas : $horas;
$segundos -= $horas * 3600;
$minutos = str_pad((floor($segundos / 60)), 2, '0', STR_PAD_LEFT);
$segundos -= $minutos * 60;
$segundos = str_pad($segundos, 2, '0', STR_PAD_LEFT);

return "$horas:$minutos:$segundos";
}

?>

Espero te ajudado, até a próxima!

2 thoughts on “Calcular a diferença entre horas com PHP

  1. Olá Camila, sempre acompanho seus posts no youtube.
    Estou iniciando no ScriptCase e gostaria de saber como aplico esta função em um form?
    Tenho três campos: HoraInicio, Hora Termino e TempoTotal que é onde preciso do resultado (HoraInicio-HoraTermino)
    Obrigado

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

© 2018 Camila Moreira | ScrollMe by AccessPress Themes