Laravel嵌套的groupBy返回一个未更改的数组



我有一个对象集合,看起来如下:

user: {
name: userName,
region: userRegion,
role: userRole
}

这些对象中的每一个都已经根据它们的区域进行了分组,但是我想根据它们的角色进一步对它们进行分组(在区域集合中(。

我试过这样做:

$Levels = $Regions->each(function ($item, $key) {
return $item->groupBy(function ($item, $key) {
return $item['Owner']['role'];
});
});

然而,它返回原始的、区域分组的集合,看起来像这样:

EU => collection {
#items: array: 10 [
0 => array: 3,
1 => array: 3...
]
}

理想情况下,我最终会得到这样的结果:

EU {
role1: array,
role2: array...
}

任何指示都将不胜感激。

我通过将each方法更改为map方法来解决此问题。

最新更新