Obtener diferencias de dias en php de forma facil

Obtener diferencias de dias en php de forma facil

Cuando intentamos saber la diferencia de días en PHP a veces tenemos que crear scripts donde obtengamos nosotros la cuenta de los días, o bien, pasar

Debug en apache sin modificar archivo conf
Estructuras en PHP
Validar si un dato existe en un rango de valores en PHP
Desarrollo web, servidor local y remoto
Persistencia de objetos para PHP

Cuando intentamos saber la diferencia de días en PHP a veces tenemos que crear scripts donde obtengamos nosotros la cuenta de los días, o bien, pasar a tiempo máquina y hacer los cálculos.

Sea como sea, si solo queremos obtener el numero de días que ha pasado de una fecha a otra, podemos usar una función muy sencilla llamada gregoriantojd.

Con esta función podremos convertir una fecha del malisimo calendario gregoriano y convertirlo a la fecha juliana que es la perfecta que pudiéramos adoptar. De ahí se hace la operación y con ello obtenemos el numero de días que hay de diferencia entre ambas fechas.
Hay que aclarar que solo es para los días, es decir, que con esto no buscamos una exactitud entre horas minutos, etc.
Ejemplo
<?php
$dias = gregoriantojd("01", "01", "2012") - gregoriantojd("01", "12", "2012");

echo "{$dias} dias";
?>
Resultado: 12 dias

Las fechas deben ir en formato Mes. Día y Año.

 

En función puede quedar de esta manera
/**
* @vars RECIBIENDO LA FECHA EN FORMATO DD-MM-AAAA
*/
public static function difDias($fechaI, $fechaF){
	try {
		
		$f1 = explode("-", $fechaF);
		$f2 = explode("-", $fechaI);

		return gregoriantojd(intval($f1[1]), intval($f1[0]), intval($f1[2])) - gregoriantojd(intval($f2[1]), intval($f2[0]), intval($f2[2]));
			
	} catch (Exception $e){
		throw new Exception($e->getMessage(), 1);
	}
}

 

COMMENTS

WORDPRESS: 0