Foros del Web » Programando para Internet » PHP »

Como restasr fechas para calcular días

Estas en el tema de Como restasr fechas para calcular días en el foro de PHP en Foros del Web. hola a todos: Quisiera saber como se calcula los días entre fechas en php. Seguro que existe alguna funcion pero no la he encontrado. Salu2...
  #1 (permalink)  
Antiguo 09/11/2007, 07:33
 
Fecha de Ingreso: junio-2004
Mensajes: 185
Antigüedad: 19 años, 10 meses
Puntos: 0
Pregunta Como restasr fechas para calcular días

hola a todos:

Quisiera saber como se calcula los días entre fechas en php.
Seguro que existe alguna funcion pero no la he encontrado.

Salu2

Última edición por isaacrc82; 09/11/2007 a las 07:42
  #2 (permalink)  
Antiguo 09/11/2007, 08:43
Avatar de Seppo  
Fecha de Ingreso: marzo-2005
Ubicación: Buenos Aires, Argentina
Mensajes: 1.284
Antigüedad: 19 años, 1 mes
Puntos: 17
Re: Como restasr fechas para calcular días

Se calcula fácil, restando las timestamp

Código PHP:
function diff_date($date1$date2)
{
    if (!
is_integer($date1)) $date1 strtotime($date1);
    if (!
is_integer($date2)) $date2 strtotime($date2);
    return 
floor(abs($date1 $date2) / 60 60 24);

  #3 (permalink)  
Antiguo 09/11/2007, 08:52
Avatar de ferbux  
Fecha de Ingreso: mayo-2007
Ubicación: por ahí intentado ayudar
Mensajes: 823
Antigüedad: 16 años, 11 meses
Puntos: 6
Re: Como restasr fechas para calcular días

Hola si lo ke kieres es saber cuantos dias hay entre 2 fechas puedes hacer lo siguiente:

Código:
$fecha=$_POST['fecha'];//obtienes la primer fecha de tu formulario (fijate bajo ke metodo envias si es Post usalo tal cual esta aki y si es get solo cambia POST por GET)
$fecha2=$_POST['fecha2'];//obtienes la segunda fecha de tu formulario

$ar=array();
$ar=explode("-", $fecha);
$ar2=array();
$ar2=explode("-",$fecha2);



$timestamp1 = mktime(0,0,0,$ar[1],$ar[2],$ar[0]); //PON LOS ARREGLOS ACOMODADOS MES-DIA-ANHO yo por ejemplo captura la fecha en formato anho-mes-dia y al pasarlo a arreglo me keda ar[0]=2007, ar[1]=11, ar[2]=20 por eso aki akomodo el arreglo de forma ke entre a la funcion mktime como 11-20-2007
       $timestamp2 = mktime(4,12,0,$ar2[1],$ar2[2],$ar2[0]); 

       //resto a una fecha la otra 
       $segundos_diferencia = $timestamp1 - $timestamp2; 
       //echo $segundos_diferencia; 

       //convierto segundos en días 
       $dias_diferencia = $segundos_diferencia / (60 * 60 * 24); 

       //obtengo el valor absoulto de los días (kito el posible signo negativo jeje) 
       $dias_diferencia = abs($dias_diferencia); 

       //kito los decimales a los días de diferencia 
       $dias_diferencia = floor($dias_diferencia); 

echo "Estos son los dias de diferencia entre las fechas"; echo $fecha; echo fecha2; echo $dias_diferencia;
Espero te sirva.

salu2
__________________
"Eres grande por que caminas entre gigantes"
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 07:44.