siguiente día laborable
Esto encuentra el siguiente día laborable a partir una fecha específica (sin incluir el sábado o el domingo):
echo date('Y-m-d', strtotime('2011-04-05 +1 Weekday'));
También podría hacerlo con th una variable de fecha, por supuesto:
$myDate = '2011-04-05';
echo date('Y-m-d', strtotime($myDate . ' +1 Weekday'));
ACTUALIZACIÓN: O, si tiene acceso a PHP's DateTime class (muy probable):
$date = new DateTime('2018-01-27');
$date->modify('+7 weekday');
echo $date->format('Y-m-d');
desea omitir Vacaciones ?:
Aunque el cartel original mencionaba "No necesito considerar las vacaciones", si desea ignorarlo re vacaciones, solo recuerda: "Vacaciones" es solo una selección de las fechas que no deseas incluir y difiere según el país, la región, la empresa, la persona ... etc.
Simplemente ponga el código anterior en una función que excluya/pase más allá de las fechas que no desea incluir. Algo como esto:
$tmpDate = '2015-06-22';
$holidays = ['2015-07-04', '2015-10-31', '2015-12-25'];
$i = 1;
$nextBusinessDay = date('Y-m-d', strtotime($tmpDate . ' +' . $i . ' Weekday'));
while (in_array($nextBusinessDay, $holidays)) {
$i++;
$nextBusinessDay = date('Y-m-d', strtotime($tmpDate . ' +' . $i . ' Weekday'));
}
Estoy seguro de que el código anterior se puede simplificar o acortarse si lo desea. Traté de escribirlo de una manera fácil de entender.
http://stackoverflow.com/questions/336127/calculate-business-days – bensiu