#php #laravel
#php #laravel
Вопрос:
У меня есть контроллер, который получает все opened
и closed
проекты.
$projectsByRegister = collect($result)->groupBy(['date', 'closed']);
Когда этот код выполняется, он возвращает
При разделении groupBy
я вижу, что значения верны:
$projectsByRegister = collect($result)->groupBy(['closed']); // a flag 0 or 1
$projectsByRegister = collect($result)->groupBy(['date']); // month / year
Чего я хочу добиться, так это чего-то вроде:
01/2018:
0: [{...}]
1: [{...}]
01/2019:
0: [{...}]
1: [{...}]
...
Есть идеи?
Ответ №1:
Используйте это так:
$projectsByRegister = собрать($result)-> groupBy(‘дата’)-> groupBy(‘закрыто’);
Комментарии:
1. Почти тот же результат, что и в первом примере в вопросе, но с увеличивающимся числом там, где
date
должно быть. И игнорированиеgroupBy('closed')
2. Затем используйте groupBy перед его сбором.