在Laravel 5中,可以使用集合的groupBy
方法将多个项放入集合中的同一个键中,而不会覆盖原有的值。groupBy
方法接受一个回调函数作为参数,该回调函数决定了如何将集合中的项分组。
以下是一个示例代码:
$collection = collect([
['name' => 'Apple', 'color' => 'red'],
['name' => 'Banana', 'color' => 'yellow'],
['name' => 'Orange', 'color' => 'orange'],
['name' => 'Apple', 'color' => 'green'],
]);
$grouped = $collection->groupBy('name');
$grouped->all();
上述代码中,我们有一个包含多个水果的集合。通过调用groupBy('name')
方法,我们将集合中的项按照name
键进行分组。最终的结果是一个新的集合,其中每个键都对应一个包含相同name
值的项的子集合。
输出结果如下:
[
'Apple' => [
['name' => 'Apple', 'color' => 'red'],
['name' => 'Apple', 'color' => 'green'],
],
'Banana' => [
['name' => 'Banana', 'color' => 'yellow'],
],
'Orange' => [
['name' => 'Orange', 'color' => 'orange'],
],
]
在这个例子中,我们将水果按照名称进行了分组,每个键对应一个包含相同名称的水果的子集合。
关于Laravel的集合和groupBy
方法的更多信息,可以参考腾讯云的Laravel文档。
领取专属 10元无门槛券
手把手带您无忧上云