首页 话题 小组 问答 好文 用户 我的社区 域名交易 唠叨

[函数]CollectionFind::groupBy()函数—用法及示例

发布于 2025-04-21 16:43:08
0
48

函数名称:CollectionFind::groupBy() 适用版本:PHP 7.3+ 用法:groupBy() 方法用于按照给定的键对集合进行分组。该方法返回一个新的集合,其中包含按照指定键分组的...

函数名称:CollectionFind::groupBy() 

适用版本:PHP 7.3+ 

用法:groupBy() 方法用于按照给定的键对集合进行分组。该方法返回一个新的集合,其中包含按照指定键分组的元素。 语法:$collection->groupBy($key)

参数:

  • $key:一个闭包函数或字符串,表示按照哪个键进行分组。闭包函数接受集合中的每个元素作为参数,并返回要用于分组的键。

返回值:返回一个新的集合,其中包含按照给定键分组的元素。每个分组都是一个关联数组,以键为索引,值是一个包含与该键匹配的元素的集合。

示例:

$collection = collect([
    ['name' => 'Alice', 'age' => 20],
    ['name' => 'Bob', 'age' => 25],
    ['name' => 'Charlie', 'age' => 20],
]);

$grouped = $collection->groupBy('age');

$grouped->toArray();

输出结果:

[
    20 => [
        ['name' => 'Alice', 'age' => 20],
        ['name' => 'Charlie', 'age' => 20],
    ],
    25 => [
        ['name' => 'Bob', 'age' => 25],
    ],
]

在上面的示例中,我们有一个包含三个人的集合。我们使用 groupBy('age') 方法按照年龄对集合进行分组。最后,我们通过调用 toArray() 将分组的结果转换为数组。输出结果显示了按照年龄分组的集合,每个分组都是一个关联数组,其中键是年龄,值是与之匹配的元素数组。

评论
一个月内的热帖推荐
啊龙
Lv.1普通用户

9545

帖子

31

小组

3242

积分

赞助商广告
站长交流