Ir para conteúdo
Fórum Script Brasil
  • 0

Duvidas De Calculo


alexandremanowar

Pergunta

Eae e galera!

Eu fiz um código que calcula a diferença de horas tipo assim se o cara entra as 14:00 e sai as 18:30 o resultado será 4:30. O código é esse:

$dia= date("Y-m-d");

$diferenca = strtotime("$dia 7:40:00") - strtotime("$dia 6:20:00");
echo "$diferenca<br><br>";

$hora = floor($diferenca / 3600); // valor de horas inteiras
$diferenca %= 3600; // subtrai as horas inteiras da diferença
$min = $diferenca / 60; // minutos que restaram

echo "$hora : $min";

Esse código funciona subtraindo a hora de sáida pela hora de entrada, então eu tenho a diferença.

Porém eu preciso fazer um código que faço ao contrário ou seja some as horas tipo o primeiro valor de horas é 16:20 e o segundo valor de horas é 19:10. A soma dos dois valores resultará em 35:30. Como eu faço isso?

Link para o comentário
Compartilhar em outros sites

8 respostass a esta questão

Posts Recomendados

  • 0

E ae heltonritter beleza!

Cara eu não entendi o que você explicou. O que eu preciso é justamente fazer um calculo pegue dois valores de horas tipo 16:30 + 19:20 = 35:50. Porém não estou conseguindo fazer essa soma. Você sabe como fazer? Pode me dar um exemplo?

Link para o comentário
Compartilhar em outros sites

  • 0

ue..

nume so fazer:

$dia= date("Y-m-d");

$diferenca = strtotime("$dia 7:40:00") + strtotime("$dia 6:20:00");
echo "$diferenca<br><br>";

$hora = floor($diferenca / 3600); // valor de horas inteiras
$diferenca %= 3600; // subtrai as horas inteiras da diferença
$min = $diferenca / 60; // minutos que restaram

echo "$hora : $min";

???

n entendi a duvida!

Link para o comentário
Compartilhar em outros sites

  • 0

Ea e cara beleza! Então eu tentei fazer do jeito que colocou aí também mas não funciona. olha o resultado que ele joga na tela:

2283451200

634292 : -28.2666666667

Essa esquema só esta funcionando quando o calculo é com subtração com adição não esta funcionando.

você sabe como corrigir isso? POrque não esta funcionando? você testou aí na sua máquina?

Link para o comentário
Compartilhar em outros sites

  • 0

Cara depois de muito sufoco consegui fazer! Da uma olhada no código e me fala o que você achou:


     $entrada = "8:2:02";
    $saida ="10:2:24";
    $hora1 = explode(":",$entrada);
    $hora2 = explode(":",$saida);
    $acumulador1 = ($hora1[0] * 3600) + ($hora1[1] * 60) + $hora1[2];
    $acumulador2 = ($hora2[0] * 3600) + ($hora2[1] * 60) + $hora2[2];
    $resultado = $acumulador2 + $acumulador1;
    $hora_ponto = floor($resultado / 3600);
    $resultado = $resultado - ($hora_ponto * 3600);
    $min_ponto = floor($resultado / 60);
    $resultado = $resultado - ($min_ponto * 60);
    $secs_ponto = $resultado;
   // return $hora_ponto.":".$min_ponto.":".$secs_ponto;
    echo " $hora_ponto :$min_ponto :$secs_ponto";

Posta o seu aí! Eu achei que esse ficou muito grande se você tiver tempo e achar uma solução melhor eu agradeço.

Valeu mesmo pela força

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...