Devolver los días de diferencia entre dos fechas

Código PHP

PHP – Date – Deferencia días

Función que devuelve los días de diferencia entre dos fechas del formato yyyy-mm-dd.

El cálculo se realiza pasando las dos fechas a TimeStamp y restándolas. No se comprueban que sean fechas válidas

/**
 * Class HelperDate
 */
abstract class HelperDate
{
    /**
     * Devuelve el numero de días entre dos fechas.
     * Formato de fecha: yyyy-mm-dd
     *
     * @param $fecha1
     * @param $fecha2
     *
     * @return int
     */
    public static function getDifDays($fecha1, $fecha2)
    {

        list($anio1, $mes1, $dia1) = explode('-', $fecha1);
        list($anio2, $mes2, $dia2) = explode('-', $fecha2);

        /* calculo timestam de las dos fechas */
        $timestamp1 = mktime(0, 0, 0, $mes1, $dia1, $anio1);
        $timestamp2 = mktime(0, 0, 0, $mes2, $dia2, $anio2);

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


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

        /* Obtenemos el valor absoluto de los días 
           (quito el posible signo negativo) */
        $dias_diferencia = abs($dias_diferencia);

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

        return intval($dias_diferencia);
    }
}