Para una herramienta que estoy desarrollando necesito calcular dias hábiles y festivos, googleando me encontré este código que lo hace
Código PHP:
Ver originalfunction DiasHabiles($fecha_inicial,$fecha_final)
{
$ini = mktime(0, 0, 0, $mes , $dia, $year); $fin = mktime(0, 0, 0, $mesf , $diaf, $yearf);
$r = 1;
while($ini != $fin)
{
$ini = mktime(0, 0, 0, $mes , $dia+$r, $year); $newArray[] .=$ini;
$r++;
}
return $newArray;
}
function Evalua($arreglo)
{
'1-1', // Año Nuevo (irrenunciable)
'10-4', // Viernes Santo (feriado religioso)
'11-4', // Sábado Santo (feriado religioso)
'1-5', // Día Nacional del Trabajo (irrenunciable)
'21-5', // Día de las Glorias Navales
'29-6', // San Pedro y San Pablo (feriado religioso)
'16-7', // Virgen del Carmen (feriado religioso)
'15-8', // Asunción de la Virgen (feriado religioso)
'18-9', // Día de la Independencia (irrenunciable)
'19-9', // Día de las Glorias del Ejército
'12-10', // Aniversario del Descubrimiento de América
'31-10', // Día Nacional de las Iglesias Evangélicas y Protestantes (feriado religioso)
'1-11', // Día de Todos los Santos (feriado religioso)
'8-12', // Inmaculada Concepción de la Virgen (feriado religioso)
'13-12', // elecciones presidencial y parlamentarias (puede que se traslade al domingo 13)
'25-12', // Natividad del Señor (feriado religioso) (irrenunciable)
);
for($i=0;$i<=$j;$i++)
{
$dia = $arreglo[$i];
$feriado = $fecha['mday']."-".$fecha['mon'];
if($fecha["wday"]==0 or $fecha["wday"]==6)
{
$dia_ ++;
}
{
$dia_++;
}
}
$rlt = $j - $dia_;
return $rlt;
}
$CantidadDiasHabiles = Evalua(DiasHabiles('19-10-2010','28-12-2010'));
echo $CantidadDiasHabiles;
Sin Embargo, al ejecutarlo arroja unos NOTICES, que al parecer no afectan la ejecución del script pero son molestos a la hora de implementarlo, le he dado vueltas al código y no logro solucionarlos, alguien me puede dar una mano (que no sea ocultar los NOTICES en php.ini) gracias