Laravel 5.7 - забыть или исключить из коллекции, когда ключ может меняться - PullRequest
0 голосов
/ 08 декабря 2018

Помощники 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); работает сейчас, я не могу на это полагаться.Я знаю, что мог бы отфильтровать или отобразить карту, чтобы удалить его, поэтому в основном просто задаюсь вопросом, видит ли кто-то более творческое решение, чем это.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...