laravel collection 自定义排序
要自定义Laravel集合的排序,可以使用sort()方法,并传递一个匿名函数作为参数。匿名函数可以接收两个参数,这两个参数分别是集合中的两个元素。在匿名函数中,您可以根据自定义的排序逻辑返回一个比较结果,以确定元素的排序顺序。
以下是一个例子,展示如何自定义使用Laravel集合的sort()方法进行排序:
$collection = collect([
['name' => 'John', 'age' => 25],
['name' => 'Jane', 'age' => 30],
['name' => 'Dave', 'age' => 20]
]);
$sortedCollection = $collection->sort(function ($a, $b) {
return $a['age'] - $b['age']; // 按年龄升序排序
});
$sortedCollection->all();
在上面的例子中,我们有一个包含多个关联数组的集合,每个数组都有'name'和'age'字段。我们使用sort()方法对集合进行排序,并传递一个匿名函数。在匿名函数中,我们比较每个元素的'age'字段,通过计算差值来确定它们的顺序。最后,我们使用all()方法获取排序后的集合。
请根据您的实际需求修改匿名函数中的排序逻辑
原文地址: https://www.cveoy.top/t/topic/iBaD 著作权归作者所有。请勿转载和采集!