Получить список именинников

Цуиьфыеук

Создатель
Регистрация
15 Янв 2018
Сообщения
36
Реакции
19
Доброе утро, есть список сотрудников вида
PHP:
$workers = Array(
Array('name' => 'Иван Иванович Петров', 'bd' => '20.07.1974', 'sex' => 1),
Array('name' => 'Ольга Михайловна Северова', 'bd' => '12.04.1984', 'sex' => 2),
Array('name' => 'Виталий Олегович Кириллов', 'bd' => '10.01.1983', 'sex' => 1)
);
Как можно вывести список именинников на 10 дней вперед? Особенно запутался с ситуацией в декабре
 
Интересная задачка) :popcorn: Вот, пробуйте:
PHP:
$days = 10;// на сколько дней вперёд
$holy_workers = [];
$date = new DateTimeImmutable();
foreach (range(0, $days) as $i)
    $holydays[] = $date->add(new DateInterval("P{$i}D"))->format('d.m');
foreach ($workers as $worker)
    if (in_array(substr($worker['bd'], 0, 5), $holydays))
        $holy_workers[] = $worker;
print_r($holy_workers);// результат в массиве $holy_workers
 
А если нужно несколько дней назад добавить, то просто использовать вместо метода add sub. Надеюсь эта штука високосные годы учитывает.
 
Назад
Сверху