Помощники Laravel except()
и forget()
оба делают то, что делают, по ключу.Мне интересно, есть ли удобный способ использовать любой из них, чтобы исключить элемент, когда ключ непредсказуем.У меня есть коллекция, которая выглядит так:
Collection {#469
#items: array:3 [
0 => array:2 [
"name" => "Bug"
"class" => "App\Models\BugTypes\Bug"
]
1 => array:2 [
"name" => "PreBug"
"class" => "App\Models\BugTypes\PreBug"
]
2 => array:2 [
"name" => "Request"
"class" => "App\Models\BugTypes\Request"
]
]
}
, и я хочу всегда исключать PreBug
.Проблема заключается в том, что коллекция создается динамически из пространств имен, и если вы добавите или удалите пространство имен, ключ для PreBug может измениться.А именно, если бы вы создали тип, который в алфавитном порядке предшествует букве P. Поэтому, хотя $data->except(1);
работает сейчас, я не могу на это полагаться.Я знаю, что мог бы отфильтровать или отобразить карту, чтобы удалить его, поэтому в основном просто задаюсь вопросом, видит ли кто-то более творческое решение, чем это.