- in_array: documentation ( source)
<?php
function getFutureWeekday(
string $startDate,
int $numberOfDays,
array $holidays = []
): string
{
$dt = new DateTime($startDate);
for ($i = 0; $i < $numberOfDays; ++$i) {
do {
$date = $dt->modify('+1 weekday')->format("Y-m-d");
echo $date . "\n";
} while (in_array($date, $holidays));
}
echo "---\n";
return $date ?? $startDate;
}
echo getFutureWeekday('2022-03-30', 4, ['2022-04-05']);