Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

neotheone

Contas com Horas e Minutos

Recommended Posts

Fala pessoal, gostaria de saber se é possível fazer contas

com um horário passado pelo usuário.

 

Por exemplo

Imagine que o usuário entre com a seguinte hora: 15:30

 

e eu quero diminuir 6 horas desse tempo, ficaria 09:30 correto?

 

há como fazer esse tipo de conta?

 

valew pessoal

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fala pessoal, gostaria de saber se é possível fazer contas

com um horário passado pelo usuário.

 

Por exemplo

Imagine que o usuário entre com a seguinte hora: 15:30

 

e eu quero diminuir 6 horas desse tempo, ficaria 09:30 correto?

 

há como fazer esse tipo de conta?

 

valew pessoal

 

kra...

Eu uso o date() com o mktime(); Veja um exemplo:

$resultado = date("Y-m-d H:i:s", mktime(date("H"),date("i")-15, date("s"), date("m"), date("d"), date("y")));

 

Neste caso,eu estou montando a data exatamente a 15 minutos atras... sacou?

Compartilhar este post


Link para o post
Compartilhar em outros sites

pode Tentar assim também:

 

echo strftime("%H:%M:%S", strtotime("+1 hours +2 minutes"));

abs

Compartilhar este post


Link para o post
Compartilhar em outros sites

Acho que vocês entenderam errado

 

o que eu quero fazer é que o usuario entre com uma Hora de Ocorrencia:

Exemplo:

 

eu entrei com o seguinte horario: 15:30

 

e depois entrei com a quantidade de horas que quero diminuir: 03:00

 

o resultado seria: 12:30

 

ou seja consegui diminuir 3 horas

Compartilhar este post


Link para o post
Compartilhar em outros sites

você quer modificar apenas a hora ?

 

no seu caso precisa de um conjunto

 

mktime

strtotime

date

 

com mktime, converta o horário original

 

com strtotime faça o cálculo

 

com date formate o resultado de strtotime

Compartilhar este post


Link para o post
Compartilhar em outros sites

to com maior dificuldade pra fazer isso, teria como você me dar um exemplo?

to tentando fazer assim:

 

$hora = "15:30";

$minuto = "30";

 

$h = "03";

$m = "00";

 

$total = date('H:i',( (mktime($hora, $minuto)) - mktime($h, $m)));

echo $total;

Compartilhar este post


Link para o post
Compartilhar em outros sites

to com maior dificuldade pra fazer isso, teria como você me dar um exemplo?

to tentando fazer assim:

 

$hora = "15:30";

$minuto = "30";

 

$h = "03";

$m = "00";

 

$total = date('H:i',( (mktime($hora, $minuto)) - mktime($h, $m)));

echo $total;

 

Amigo faça assim:

 

<?php
$hora = 2;
$min  = 2;
$horario =  date("H:i", mktime(12, 20));
echo strftime("%H:%M",strtotime("-$hora hours -$min minutes", strtotime($horario))); 
?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

sem querer te alugar David,

essa parte da hora funcionou direitinho

 

Eu digitei a hora: 23:50

e somei mais 01:00 hora

 

a saída fica 00:50 certo?

_________________________________________

será que tenho como manipular data tmb?

 

por exemplo:

entrei com a data de hj: 29/05/2008

ja que la em cima a hora foi para 00:50, ele teria que atualizar para 30/05/2008, tem como fazer tmb?

 

vlwwww

Compartilhar este post


Link para o post
Compartilhar em outros sites

basta adicionar os parametros adequados no output

no exemplo do David o output mostra Hora e Minuto

 

"%H:%M"

 

 

para exibir a data:

 

"%Y%-m-%d %H:%M"

 

 

para ver a tabela completa consulte o manual

 

http://php.net/strftime

Compartilhar este post


Link para o post
Compartilhar em outros sites

agradeço a todos a ajuda

 

aqui vai o meu exemplo pronto

 

$dia = $_POST["diaOcorrencia"];
$mes = $_POST["mesOcorrencia"];
$ano = $_POST["anoOcorrencia"];

//Formatação da data no formato: aaaa-mm-dd
$data = $ano . "-" . $mes . "-" . $dia;



echo "<hr>";

$hora	 = $_POST["horaOcorrencia"];
$sinal	= $_POST["sinalFuso"];
$fuso	 = $_POST["fusoHorario"];

$horario  = explode(":", $hora);
$h 		  = $horario[0];
$m		= $horario[1];

$fuso	 = explode(":", $fuso);
$fusoHora = $fuso[0];
$fusoMin  = $fuso[1];

$horario =  date("d-m-Y H:i", mktime($h, $m, $s, $mes, $dia, $ano));
$fusoH 	 = '09';
$fusoM   = '00';
echo strftime("%d/%m/%Y %H:%M",strtotime("-$fusoH hours -$fusoM minutes", strtotime($horario)));

agora ta funcionando :)

 

só que eu li no php.net e nao entendi muito bem a funcionalidade do mktime, do strtotime e do strftime alguem poderia me dar uma explicação melhor?

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.