我有一些来自我的数据库的Eloquent模型项的集合,它们使用groupBy()
按属性分组,我需要按照每个组的第一项的另一个属性对该集合进行排序,但保留初始结构。如果可能的话,我怎样才能做到这一点?
答案 0 :(得分:2)
groupBy
会返回一个集合,因此您仍然可以使用sortBy
方法。您需要使用回调来从每个组中的第一个项获取属性值,而不是仅仅给它一个字符串。
$sorted = $groups->sortBy(function ($group, $key) {
return $group->first()->someAttribute;
});