Как изменить значения ключей после groupBy в eloquent? - PullRequest
0 голосов
/ 24 апреля 2019

Я сгруппировал список записей по месяцу, в котором они были созданы:

$jobListings = JobListing::with('company')->orderBy('created_at')->get();

$jobListings = $jobListings->groupBy(function($j) {
    return Carbon::parse($j->created_at)->format('m');
});

return response()->json($jobListings);

Это даст мне объект JSON, записи которого вводятся по месяцам в числовом формате:

{
  "03": [...],
  "04": [...],
}

Как я могу изменить ключи этой коллекции Eloquent, чтобы месяцы читались как слова типа "Март" и "Апрель"?

Чтобы было ясно, я хотел бы вывести следующее:

{
  "March": [...],
  "April": [...],
}

В этом ответе показано, как преобразовать числа в месяцы.

Как изменить ключи в этой коллекции после запуска groupBy?

1 Ответ

4 голосов
/ 24 апреля 2019

Вы можете попробовать использовать формат ('F')

         return Carbon::parse($j->created_at)->format('F');
...