groupBy как индексированный массив в Laravel - PullRequest
1 голос
/ 25 мая 2019

Предположим, у меня есть такая коллекция:

$collection = [
  App\User {name: 'Bob', age: 20},
  App\User {name: 'Joe', age: 22},
  App\User {name: 'Lisa', age: 20}
]

, и я группирую их как $collection->groupBy('age').Я получаю такой результат:

[
  "20" => [
    App\User {name: 'Bob', age: 20},
    App\User {name: 'Lisa', age: 20},
  ],
  "21" => [
    App\User {name: 'Joe', age: 22}
  ]
]

Я хотел бы удалить ассоциативные ключи и просто использовать индексированный массив, например:

[
  [
    App\User {name: 'Bob', age: 20},
    App\User {name: 'Lisa', age: 20},
  ],
  [
    App\User {name: 'Joe', age: 22]
  ]
]

Возможно ли это сделать с помощью Laravelметод сбора?Заранее спасибо за любые указатели!

1 Ответ

3 голосов
/ 25 мая 2019

Использование array_values: https://www.php.net/manual/en/function.array-values.php

array_values($collection->groupBy('age'));

Более Laravel путь будет

$collection->groupBy('age')->values();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...