📅  最后修改于: 2023-12-03 14:43:48.262000             🧑  作者: Mango
在 Laravel 中,我们可以使用 collection
对象对数组进行操作和排序。在这篇文章中,我们将学习如何对集合进行排序。
我们先创建一个简单的集合,然后对其进行排序。下面是创建集合的代码:
$collection = collect([
['name' => 'John', 'age' => 23],
['name' => 'Jane', 'age' => 18],
['name' => 'Bob', 'age' => 32],
]);
我们可以通过 sortBy
和 sortByDesc
方法按照集合中某个键的值进行排序。
sortBy
方法按照值升序排序。$collection = $collection->sortBy('age');
sortByDesc
方法按照值降序排序。$collection = $collection->sortByDesc('age');
我们可以通过 sortBy
和 sortByDesc
方法按照集合中某个键进行排序。
sortBy
方法按照键升序排序。$collection = $collection->sortBy(function ($item) {
return $item['name'];
});
sortByDesc
方法按照键降序排序。$collection = $collection->sortByDesc(function ($item) {
return $item['name'];
});
我们可以通过 sort
方法自定义排序逻辑。
$collection = $collection->sort(function ($a, $b) {
return $a['age'] - $b['age'];
});
我们可以通过集合方法链对集合进行多重操作。
$collection = collect([
['name' => 'John', 'age' => 23],
['name' => 'Jane', 'age' => 18],
['name' => 'Bob', 'age' => 32],
]);
$collection = $collection->sortBy('age')->values()->all();
最后,我们可以使用 all
方法将集合转换为普通数组,以便进行下一步操作。
这就是如何在 Laravel 中排序集合的方法。如果您有其他的技巧或建议,请在下面的评论区留言。