Jump to content
Fórum Script Brasil
  • 0

Soma Time (hh:mm:ss)


Guest !! TIAGO !!
 Share

Question

Guest !! TIAGO !!

Pessoal, estou com um problema e não venho encontrando solução.

O meu código tenho um loop que pega valores do tipo TIME do meu banco.

O problema é o seguinte: preciso SOMAR todas essas variáveis e depois fazer uma média.

Minha pergunta é: qual melhor maneira para somar variaveis do tipo TIME que estão no formato HH:MM:SS

Alguém pode me ajudar ?

Link to comment
Share on other sites

5 answers to this question

Recommended Posts

  • 0

Se eu entendi bem o que você quer fazer, acredito que a melhor maneira seria somar utilizando timestamp com a função mktime()

Não é difícil... tipo, você tem o valor original... aí com essa função, você pode ir acrescentando valores em anos, meses, dias, horas, minutos ou segundos... smile.gif

Até mais!

Link to comment
Share on other sites

  • 0
Guest !! TIAGO !!

Vou postar o código pra você ter uma noção:

while($linha = mysql_fetch_array($busca)) {

$tma = $linha['tma'];

$soma_tma = ???

$media_tma = ???

}

echo $tma;

-----------------------------------------------------------------------

Cada variavel $tma retorna valor entre 00:00:01 e 06:00:00

O loop em si será de acordo com a quantidade dos dias dos meses (entre 1 e 31).

Tentei converter tudo para segundos, milésimos, microsegundos ... e nada.

Não consigo achar uma solução !

----------------

Link to comment
Share on other sites

  • 0

Ok... olha como você pode fazer:

- pega cada valor individual aí com a função explode();

- Aí você cria um array pra cada tipo de dado: $hora[], $minuto[], $segundo[]

E vai somando hora com hora, minuto com minuto, segundo com segundo...

No final, você transforma horas e minutos totais para segundos, soma com o valor acumulado dos segundos, tira a média e converte para horas e minutos novamente.

Link to comment
Share on other sites

  • 0
Guest !! TIAGO !!

Hum entendi ... agora só mais uma ajudinha: se eu tenho uma variavel em segundos tipo $tma = 153254, como converte-la para o formarto HH:MM:SS ?

Valeu pela ajuda !!!

Link to comment
Share on other sites

  • 0

De nada! smile.gif

Bom, isso é um cálculo mais ou menos simples... depois que você entende a lógica, não é difícil... você pode fazer assim:

$total_segundos = 3665;

$horas = floor($total_segundos / (60*60));

$sobra_horas = ($total_segundos % (60*60));

$minutos = floor($sobra_horas / 60);

$sobra_minutos = ($sobra_horas % 60);

$segundos = $sobra_minutos;

echo $horas . ' hora(s), ' . $minutos . ' minuto(s) e ' . $segundos . ' segundo(s)';

Falou!

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share



  • Forum Statistics

    • Total Topics
      150.7k
    • Total Posts
      648.5k
×
×
  • Create New...