Вы можете попробовать их связать, однако я не уверен, что он принесет вам нужные результаты. Может хотеть проверить, чтобы убедиться,
$query = Activity::all()->groupBy('performed_at_year_month')->groupBy('performer_id')->toJson();
Я только что проверил это, и вы правильно, это не сохраняя ключи, хотя я думаю, что я могу предположить, почему. Если ключ окажется таким же, все будет перезаписано. Также может быть трудно определить, какой ключ является тем, что и в целом чувствует себя немного «взломанным», где, вероятно, существует гораздо лучшее решение.
Однако, я думаю, что я понял, как это сделать.
$query = Activity::all();
$activities = new \Illuminate\Database\Eloquent\Collection($query);
$activities = $activities->groupBy('performed_at_year_month')->toArray() + $activities->groupBy('performer_id')->toArray();
echo json_encode($activities);
спасибо! Это возвращает данные, сгруппированные правильно, но не включает ключи (perform_at_year_month, performer_id) в строке json. Можете ли вы порекомендовать это решение? –
Я обновил свой ответ. – user3158900
Большой ответ помог мне! Upvoting. – kevinabraham