Foros del Web » Programando para Internet » PHP »

sumar horas

Estas en el tema de sumar horas en el foro de PHP en Foros del Web. hola a todos, tengo un problema, necesito realizar una suma de horas pero no he podido encontrar una funcion q lo haga, por ejemplo necesito ...
  #1 (permalink)  
Antiguo 21/03/2007, 06:31
 
Fecha de Ingreso: febrero-2006
Mensajes: 5
Antigüedad: 18 años, 9 meses
Puntos: 0
sumar horas

hola a todos, tengo un problema, necesito realizar una suma de horas pero no he podido encontrar una funcion q lo haga, por ejemplo necesito sumar 12:30:00 + 13:10:01 y el resultado debe ser 25:40:01. Muchas gracias de antemano...

Última edición por nrrivas; 21/03/2007 a las 06:59
  #2 (permalink)  
Antiguo 22/03/2007, 15:53
 
Fecha de Ingreso: septiembre-2004
Mensajes: 66
Antigüedad: 20 años, 1 mes
Puntos: 0
Re: sumar horas

Esto te servirá suerte

<?php
// Autor elkronos

function suma2horas($hora1,$hora2)
{
$totseg =0;$totmin=0;$tothora=0;
list($h1,$m1,$s1) = explode(":",$hora1);
list($h2,$m2,$s2) = explode(":",$hora2);

if(($s1 +$s2) > 59){

$totseg = 0;
$totmin++;


}else{
$totseg = $s1 +$s2;

}
$totmin += $m1 + $m2;

if($totmin > 59){

$totmin = 0;

$tothora++;
}
$tothora+= $h1 + $h2;


return ((strlen($tothora)==1)?"0$tothora":$tothora).":".( (strlen($totmin)==1)?"0$totmin":$totmin).":".((str len($totseg)==1)?"0$totseg":$totseg);
}

// USO
echo suma2horas("12:30:00","13:10:01");
?>

Última edición por elkronos; 22/03/2007 a las 15:54 Razón: me falto una parte
  #3 (permalink)  
Antiguo 23/03/2007, 13:10
 
Fecha de Ingreso: febrero-2006
Mensajes: 5
Antigüedad: 18 años, 9 meses
Puntos: 0
Re: sumar horas

Muchas gracias, si funciono, pero tuve que hacerle algunos pequeños cambios:

Código PHP:
<?php
// Autor elkronos

function suma2horas($hora1,$hora2)
{
$totseg =0;$totmin=0;$tothora=0;
list(
$h1,$m1,$s1) = explode(":",$hora1);
list(
$h2,$m2,$s2) = explode(":",$hora2);

if((
$s1 $s2) > 59)
    {
        
$totseg $s1 $s2 60;
        
$totmin++;
    }
else
    {
        
$totseg $s1 +$s2;
    }
$totmin += $m1 $m2;
if(
$totmin 59)
    {
        
$totmin $totmin 60;
        
$tothora++;
    }
$tothora+= $h1 $h2;
return ((
strlen($tothora)==1)?"0$tothora":$tothora).":".( (strlen($totmin)==1)?"0$totmin":$totmin).":".((strlen($totseg)==1)?"0$totseg":$totseg);
}

// USO
echo suma2horas("01:59:59","03:59:59");
?>
Gracias nuevamente
  #4 (permalink)  
Antiguo 23/03/2007, 13:31
 
Fecha de Ingreso: noviembre-2003
Mensajes: 798
Antigüedad: 21 años
Puntos: 8
Re: sumar horas

Tanta complicación, pueden usar mktime o strtotime para sumar fechas, horas, etc... en unas pocas lineas de código.
  #5 (permalink)  
Antiguo 25/03/2007, 22:16
 
Fecha de Ingreso: septiembre-2004
Mensajes: 66
Antigüedad: 20 años, 1 mes
Puntos: 0
Re: sumar horas

da un ejemplo en codigo
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:12.