Ich habe eine Abfrage, die die Namen von Kategorien und ihren Unterkategorien zurückgibt.
$subcategories = Subcategory::select('subcategories.name as subcatname', 'categories.name as catname') ->join('categories', 'subcategories.idCategory', '=', 'categories.id') ->get();
Jetzt bekomme ich folgendes Ergebnis:
'Music' => 'Jazz', 'Music' => 'Rock', 'Music' => 'Pop', 'Movie' => 'Action'
Wie kann ich es so gruppieren:
'Music' => array('Jazz', 'Rock','Pop'), 'Movies' => array('Action')
Ist es möglich, ohne zu viele Schleifeniterationen zu prüfen, welche Unterkategorie zu welcher Kategorie gehört?
您可以使用laravel
集合
首先,您需要通过
groupBy
方法进行分组,然后映射
每个组并合并每个子数组。