RRH Posted August 9, 2011 Report Share Posted August 9, 2011 (edited) Psquisando sobre como lidar com horas no php encontrei o código abaixo que soma horas a hora atual:<?php echo date("H:i:s", strtotime("3 hours")); ?>Só que estou precisando adicionar 01 hora a uma variável e não a hora atual mas não estou conseguindo. Edited August 19, 2011 by RRH Quote Link to comment Share on other sites More sharing options...
0 beuleal Posted August 10, 2011 Report Share Posted August 10, 2011 Seria isso?$hora = 1;$hora_soma = 2;$hora_nova = $hora + $hora_soma;echo $hora_nova;//isso imprimirá '3' Quote Link to comment Share on other sites More sharing options...
0 ESerra Posted August 10, 2011 Report Share Posted August 10, 2011 <?php $datahora = strtotime('2010-01-05 14:18:05'); echo date("H:i:s", strtotime("3 hours",$datahora)); ?> Quote Link to comment Share on other sites More sharing options...
0 RRH Posted August 10, 2011 Author Report Share Posted August 10, 2011 (edited) Ok, obrigado. Mas como já estava com a cabeça "quente" esqueci de dizer que tal variável conterá uma hora no formato H:i:s (00:00:00) vindo de uma pesquisa ao bd mysql.<?$sql = "SELECT hora FROM tabela;"$resultado = mysql_query ($sql);while ($linha = mysql_fetch_array($resultado)){echo $linha["hora"]; Aqui seria a hora ex: 18:00:00 + 1 hora = 19:00:00}?> Edited August 10, 2011 by RRH Quote Link to comment Share on other sites More sharing options...
0 ESerra Posted August 10, 2011 Report Share Posted August 10, 2011 Para este tipo de cálculo você tem que informar uma data, pode até ignorar ela no resultado final, mas terá que informar uma data... Quote Link to comment Share on other sites More sharing options...
0 RRH Posted August 11, 2011 Author Report Share Posted August 11, 2011 (edited) Seguindo sua dica consegui avançar, porém agora estou agarrado na condição, vejam:<?php $datahoraatual = strtotime ($linha['data_inicial']." ".$linha['hora_inicial']); $datahorahmais = strtotime("1 hours", $datahoraatual); ... if (strtotime($datahoraatual) > strtotime($datahoramais)){ echo "<td align='center' style='background-color:red;'>".date('H:i', strtotime($linha["hora_inicial"]))."</td>"; }else{ echo "<td align='center'>".date('H:i', strtotime($linha["hora_inicial"]))."</td>"; } ?>O código acima não está funcionando! Ele sempre está exibindo a célula em vermelho. Estou precisando que após uma consulta o sistema compare a hora atual com a hora em que o registro foi inserido no mysql e se já tiver passado 01 hora ou mais da inclusão do registro mude a cor da célula para vermelho. Edited August 11, 2011 by RRH Quote Link to comment Share on other sites More sharing options...
0 RRH Posted August 19, 2011 Author Report Share Posted August 19, 2011 (edited) Alterando o formato da data/hora a serem comparadas de:Ex:2011-08-19 00:00:00para20110819000000consegui o resultado que buscava:<? ... $hoje = date("YmdHis"); $hregistro = strtotime ($linha['data_registro']." ".$linha['hora_registro']); $hmais = strtotime("1 hours", $hregistro); $hmais_novo = date("YmdHis",$hmais); if ($hoje >= $hmais_novo) { echo "<td align='center' style='background-color:red;'>".date('H:i', strtotime($linha["hora_registro"]))."</td>"; }else{ echo "<td align='center'>".date('H:i', strtotime($linha["hora_registro"]))."</td>"; } ...?> Edited August 19, 2011 by RRH Quote Link to comment Share on other sites More sharing options...
Question
RRH
Psquisando sobre como lidar com horas no php encontrei o código abaixo que soma horas a hora atual:
Só que estou precisando adicionar 01 hora a uma variável e não a hora atual mas não estou conseguindo.
Edited by RRHLink to comment
Share on other sites
6 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.