Как удалить из массива даты с определенным месяцем?

Здравствуйте! Помогите удалить из заданного массива даты где месяц "08"(август).
$q[] = ["25.02.2022", "27.02.2022", "28.02.2022", "30.02.2022", "25.02.2022", "25.02.2022",
        "25.08.2023", "25.08.2023", "25.08.2023", "25.08.2023", "25.02.2023", "25.02.2023",         
];
  • Вопрос задан
  • 73 просмотра
Решения вопроса 1
0xD34F
@0xD34F
Собрать новый массив:

$newArr = array_filter($arr, fn($n) => explode('.', $n)[1] !== '08');

Изменить существующий:

for ($i = 0, $j = 0; $i < count($arr); $i++) {
  if (explode('.', $arr[$i])[1] === '08') {
    $j++;
  } else if ($j) {
    $arr[$i - $j] = $arr[$i];
  }
}

array_splice($arr, -$j, $j);
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы