Идёт массив значений, требуется удалить последнее значение у группы, которая начинается (строго) от 0 до 9, если группа начинается с 1 до 9 то вывести как есть. Так же диапазон от 0 до 9 может быть в середине массива. Тут не совсем решить за меня, но СПАСИБО)). У меня получилось сделать удаление последнего значения у группы из массива, только в том случае если оно в начале массива выдает "Пример [2025000]", а вот если идёт обрыв и потом где нибудь в середине появляется группа значений (строго) от 0 до 9, то уже не удаляет.
Решение не самое быстрое, но, если я правильно понял задачу, то поможет. PHP: $data = [ 2025002 => 1, 20250021 => 1, 20250022 => 1, 20250023 => 1, 20250024 => 1, 20250025 => 1, 20250026 => 1, 20250027 => 1, 20250028 => 1, 20250029 => 1, 2025003 => 2, 20250030 => 2, 20250031 => 2, 20250032 => 2, 20250033 => 2, 20250034 => 2, 20250035 => 2, 20250036 => 2, 20250037 => 2, 20250038 => 2, 20250039 => 2, ]; // бежим по всем элементам массива // предполагаем что каждый элемент может быть группой foreach($data as $key => $val) { // сюда считаем кол-во элементов в группе $count_items_in_group = 0; // тут пробегаем по всем элементам группы // проверяем сколько элементов у текущей группы for($i=0;$i<=9;$i++) { // знаем что значение группы строго от 0 до 9 // поэтому проверяем присутствие элемента в группе // путем добавления цифр от 0 до 9 к текущему номеру группы if(isset($data[$key.$i])) { $count_items_in_group ++; } } // если у группы найдены все 10 элементов от 0 до 9 // то удаляем элемент под номером 9 if ($count_items_in_group == 10) { unset($data[$key.'9']); } } // сортируем для наглядности ksort($data,SORT_STRING); // проверяем результат print_r($data);