Foros del Web » Programando para Internet » PHP »

Como restar 2 fechas ?

Estas en el tema de Como restar 2 fechas ? en el foro de PHP en Foros del Web. Hola amigos quisiera restar dos fechas en php las cuales se encuentran en una bd en mysql es datetime --> fecha + hora como podria ...
  #1 (permalink)  
Antiguo 17/12/2009, 19:44
(Desactivado)
 
Fecha de Ingreso: diciembre-2008
Ubicación: Trujillo - Peru
Mensajes: 341
Antigüedad: 15 años, 3 meses
Puntos: 2
Como restar 2 fechas ?

Hola amigos quisiera restar dos fechas en php las cuales se encuentran en una bd en mysql

es datetime --> fecha + hora

como podria restar para q me salga la diferencia en horas ?
  #2 (permalink)  
Antiguo 17/12/2009, 19:50
Avatar de dggluz  
Fecha de Ingreso: abril-2009
Ubicación: Buenos Aires, Argentina
Mensajes: 525
Antigüedad: 15 años
Puntos: 50
Respuesta: Como restar 2 fechas ?

Hay varias formas, pero una (desprolija) que se me ocurre ahora es pasarlas a timestamp y restarlas. Luego divides el resultado por 3600 (60 minutos * 60 segundos) y ese es el resultado final en horas. ¡Suerte!
  #3 (permalink)  
Antiguo 17/12/2009, 19:58
Avatar de Vun
Vun
Colaborador
 
Fecha de Ingreso: agosto-2009
Ubicación: Benalmádena, España
Mensajes: 2.265
Antigüedad: 14 años, 8 meses
Puntos: 150
Respuesta: Como restar 2 fechas ?

Encontre esta funcion, prueba a ver si te sirve:

Código PHP:
<?php

function dateDiff($start$end) {

$start_ts strtotime($start);

$end_ts strtotime($end);

$diff $end_ts $start_ts;

return 
round($diff 86400);

}

echo 
dateDiff("2006-04-05""2006-04-01");

?>

Sino por aqui tienes mas ejemplos:
http://www.google.es/#hl=es&source=h...d373de720a5339
  #4 (permalink)  
Antiguo 17/12/2009, 20:03
Avatar de dggluz  
Fecha de Ingreso: abril-2009
Ubicación: Buenos Aires, Argentina
Mensajes: 525
Antigüedad: 15 años
Puntos: 50
Respuesta: Como restar 2 fechas ?

Cita:
Iniciado por Vun Ver Mensaje
Encontre esta funcion, prueba a ver si te sirve:

Código PHP:
<?php

function dateDiff($start$end) {

$start_ts strtotime($start);

$end_ts strtotime($end);

$diff $end_ts $start_ts;

return 
round($diff 86400);

}

echo 
dateDiff("2006-04-05""2006-04-01");

?>

Sino por aqui tienes mas ejemplos:
http://www.google.es/#hl=es&source=h...d373de720a5339
Hace lo que dije yo (strtotime convierte una fecha escrita como string a un timestamp o epoch) con una diferencia: al dividir el resultado por 86400 devuelve la diferencia de días; si se quiere la diferencia expresada en horas hay que dividir por 3600. ¡Suerte!
  #5 (permalink)  
Antiguo 17/12/2009, 20:08
(Desactivado)
 
Fecha de Ingreso: diciembre-2008
Ubicación: Trujillo - Peru
Mensajes: 341
Antigüedad: 15 años, 3 meses
Puntos: 2
Respuesta: Como restar 2 fechas ?

si en horas porque las fechas pueden ser asi:

2009-12-18 01:07:57 - 2009-12-17 21:07:57

quisiera la diferencia de esas 2 fexas por ejemplo en horas


asi kedaria

<?php

function dateDiff($start, $end) {

$start_ts = strtotime($start);

$end_ts = strtotime($end);

$diff = $end_ts - $start_ts;

return round($diff / 3600);

}

echo dateDiff("2009-12-17 21:11:02", "2009-12-18 21:11:02");

?>

gracias por su apoyo
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.
Tema Cerrado

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 21:47.