#php Calcular la diferencia de días entre dos fechas sin usar strtotime by @noprog

Fuente: programacion.com

El tratamiento de fechas suele ser una tarea que no suele tener muchos adeptos. Suele dar problemas, ya que dependiendo del lenguaje de programación que se utilice, su tratamiento será más o menos problemático.

En este caso vamos a ver como calcular la diferencia entre dos fechas dadas, utilizando para ellos una función en PHP.

El código de la función es el siguiente:

function daysDifference($endDate, $beginDate){
$date_parts1=explode("-", $beginDate);
$date_parts2=explode("-", $endDate);
$start_date=gregoriantojd($date_parts1[1], $date_parts1[2], $date_parts1[0]);
$end_date=gregoriantojd($date_parts2[1], $date_parts2[2], $date_parts2[0]);
return $end_date - $start_date;
}

A la función le pasamos las fechas en formato AAAA-MM-DD. Dentro de la función, lo que hacemos es convertir una fecha en formato Gregoriano, a forma Juliano, y por último hacemos la resta de las dos fechas. Esto lo hacemos con la función “gregoriantojd” a la que se le meten tres parámetros: mes, día y año.

Para poder utilizarlo, haríamos la llamada de la siguiente forma.

echo daysDifference('2010-10-12','2010-10-09');
Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s