Laravel 的 Collection 类是一个非常强大的工具,提供了丰富的链式操作方法来方便开发者对数据进行处理。本文将介绍 Laravel 中常用的 Collection 方法,并根据它们的功能进行分组,以帮助你更高效地使用这些方法。
这些方法主要用于从集合中获取、查询或访问特定的值。
all():获取集合的所有项目(返回一个数组)。avg():获取集合中数值的平均值。chunk():将集合分割成多个小块(数组)。collapse():将嵌套集合展开为一个集合。combine():将两个集合合并成一个键值对集合。contains():检查集合中是否包含某个元素。count():获取集合中的元素个数。diff():获取集合中与另一个集合不同的元素。diffKeys():获取集合中与另一个集合键不同的元素。first():获取集合中的第一个元素。get():获取集合中的值,支持传入默认值。implode():通过指定的键连接集合元素的值,生成字符串。intersect():获取两个集合的交集。isEmpty():检查集合是否为空。keys():获取集合的所有键。last():获取集合中的最后一个元素。map():对集合的每个元素执行指定的操作。mapWithKeys():类似 map(),但可以重建键值对。max():获取集合中的最大值。merge():合并两个集合。min():获取集合中的最小值。pluck():获取集合中某个键的所有值。random():从集合中随机返回一个元素。reduce():根据回调函数对集合中的所有元素进行递归计算。reverse():翻转集合的顺序。search():查找指定元素的键,如果元素存在,则返回键。shift():从集合中删除并返回第一个元素。sort():对集合进行升序排序。sortBy():根据指定字段对集合进行排序。sortByDesc():根据指定字段对集合进行降序排序。splice():从集合中删除指定的元素并返回删除的部分。take():获取集合的前 N 个元素。toArray():将集合转换为数组。toJson():将集合转换为 JSON 字符串。unique():去重集合中的元素。values():获取集合的所有值。这些方法主要用于对集合中的元素进行转换或修改,改变数据的结构或格式。
flatten():将多维集合转换为一维集合。flip():交换集合的键和值。transform():转化集合中的每个元素。merge():合并一个或多个集合。collapse():将嵌套集合展开为一个集合。combine():将两个集合合并为一个键值对集合。groupBy():根据某个字段对集合进行分组。keyBy():根据指定字段将集合的元素的键设置为该字段的值。sort():对集合进行升序排序。sortBy():根据指定字段对集合进行排序。sortByDesc():根据指定字段对集合进行降序排序。reverse():翻转集合的顺序。unique():去重集合中的元素。这些方法用于过滤集合中的元素,根据条件保留或移除特定的项。
filter():根据指定的条件过滤集合。reject():排除掉不满足条件的元素。each():遍历集合中的每个元素,执行回调函数。every():检查集合中每个元素是否满足条件。contains():检查集合是否包含指定元素。has():检查集合中是否存在指定的键。isEmpty():检查集合是否为空。where():根据条件从集合中筛选元素。whereStrict():根据严格比较条件筛选集合中的元素。whereIn():根据指定值匹配集合中的元素。whereLoose():通过松散比较筛选集合中的元素。intersect():获取两个集合的交集。这些方法用于对集合进行统计、计算和聚合操作。
count():获取集合的元素数量。avg():获取集合中数值的平均值。sum():获取集合中数值的总和。min():获取集合中的最小值。max():获取集合中的最大值。reduce():根据回调函数对集合中的所有元素进行递归计算。pipe():管道操作,将集合传递给回调函数,返回处理后的集合。random():从集合中随机返回一个元素。take():从集合中获取前 N 个元素。这些方法用于操作和组合集合,如分组、分页、合并等。
groupBy():按某个字段分组集合。keyBy():根据某个字段将集合的元素键设置为该字段的值。forPage():按页数分割集合,返回分页数据。chunk():将集合分割成多个小块(数组)。zip():将多个集合“拉链”合并。slice():获取集合的指定区间。这些方法用于修改或删除集合中的元素。
put():向集合中添加一个新的键值对。forget():从集合中删除指定的元素。prepend():向集合的开头插入元素。push():向集合的末尾添加元素。pop():删除集合末尾的元素并返回。pull():删除并返回指定键的值。shift():删除集合中的第一个元素并返回。这些方法用于将集合转换为不同格式的数据,便于输出或存储。
toArray():将集合转换为数组。toJson():将集合转换为 JSON 字符串。这些方法用于一些特殊操作或将集合按特定方式处理。
flip():交换集合的键和值。split():按指定条件拆分集合。transform():对集合的每个元素应用一个变换函数。| 类别 | 方法 | 总数 |
|---|---|---|
| 数据访问与查询 | all(), avg(), chunk(), collapse(), combine(), contains(), count(), diff(), diffKeys(), first(), get(), implode(), intersect(), isEmpty(), keys(), last(), map(), mapWithKeys(), max(), merge(), min(), pluck(), random(), reduce(), reverse(), search(), shift(), sort(), sortBy(), sortByDesc(), splice(), take(), toArray(), toJson(), unique(), values() |
27 |
| 数据转换与处理 | flatten(), flip(), transform(), merge(), collapse(), combine(), groupBy(), keyBy(), sort(), sortBy(), sortByDesc(), reverse(), unique() |
12 |
| 过滤与条件判断 | filter(), reject(), each(), every(), contains(), has(), isEmpty(), where(), whereStrict(), whereIn(), whereLoose(), intersect() |
11 |
| 数据统计与计算 | count(), avg(), sum(), min(), max(), reduce(), pipe(), random(), take() |
9 |
| 集合操作与组合 | groupBy(), keyBy(), forPage(), chunk(), zip(), slice() |
6 |
| 集合修改与删除 | put(), forget(), prepend(), push(), pop(), pull(), shift() |
7 |
| 数据格式化与输出 | toArray(), toJson() |
2 |
| 其他 | flip(), split(), transform() |
3 |
通过使用 Laravel 的 Collection 类,开发者可以非常高效地对数据进行各种操作。这些方法不仅能够简化数据处理逻辑,还能提高代码的可读性和可维护性。希望本文能够帮助你更好地理解并使用这些常用的 Collection 方法。
本文为冯奎原创文章,转载无需和我联系,但请注明来自冯奎博客fengkui.net
最新评论