本篇文章给大家带来的内容是关于Laravel集合的简单理解,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

前言

集合通过 Illuminate\Database\Eloquent\Collection 进行实例,Laravel的内核大部分的参数传递都用到了集合,但这并不代表集合就是好的。Laravel作为快捷并优雅的开发框架,是有他一定的道理所在的,并非因他的路由、DB、监听器等等。当你需要处理一组数组时,你可能就需要它帮助你快捷的解决实际问题。

创建集合

$collection = collect([1, 2, 3]);

显而易见,这是一部非常简单的操作,请打住你想说“这种操作很复杂”的话,它更类似与早起PHP5.x的版本的声明方式。

$collection = array(1,2,3);

laravel对于collection也没有做任何复杂的事情。

打回原型

如果你想将集合转换为数据,其使用方法也非常的简单

collect([1, 2, 3])->all();
------>
[1, 2, 3]

在不过与考虑性能的情况下,可以使用Laravel集合,毕竟它将帮你完成数组操作的百分之九十的工作。
例如我们需要通过一个水平线切分数组,将其分为2个及以上的数组个数。使用集合可以酱紫做~

$collection = collect([1, 2, 3, 4, 5, 6, 7]);
$chunks = $collection->chunk(4);
$chunks->toArray();
// [[1, 2, 3, 4], [5, 6, 7]]

并且有些还根据sql语句的查询方式来设计的方法,下面就让来看下具体都有哪些吧。

方法列表

这里列出一些常用的集合操作方法,具体及全部请操作官方。

方法

注释

all

将集合打回原型

average & avg

计算平均值

chunk

将集合拆成多个指定大小的小集合

collapse

将多个数组的集合合并成一个数组的集合

combine

可以将一个集合的值作为「键」,再将另一个数组或者集合的值作为「值」合并成一个集合

concat

将给定的数组或集合值附加到集合的末尾

contains

判断集合是否包含给定的项目

count

返回该集合内的项目总数

dd

打印集合的项目并结束脚本执行

diff

将集合与其它集合或纯 PHP 数组进行值的比较,然后返回原集合中存在而给定集合中不存在的值

each

迭代集合中的内容并将其传递到回调函数中

filter

使用给定的回调函数过滤集合的内容,只留下那些通过给定真实测试的内容

first

返回集合中通过给定真实测试的第一个元素

groupBy

根据给定的键对集合内的项目进行分组

push

把给定值添加到集合的末尾

put

在集合内设置给定的键值对

sortBy

通过给定的键对集合进行排序。排序后的集合保留了原数组键

where

通过给定的键值过滤集合

以上就是Laravel集合的简单理解的详细内容,



链接:https://pan.baidu.com/s/1v5gm7n0L7TGyejCmQrMh2g 提取码:x2p5