laravel5.1 集合
-
简介
集合是用来处理数组的类,该类的通过方法对底层数组进行操作。 -
创建集合
通过 collect 帮助函数创建集合
$collection=collect([1,2,3]);`
Eloquent 模型查询返回的也是集合类的实例,也可以使用集合的方法操作底层数组。
- 可用的方法
集合类的每一个方法几乎都返回一个集合对象,所以可以链式调用。
-
all() 返回集合的底层数组
collect([1, 2, 3])->all(); // [1, 2, 3]
-
avg() 返回集合的平均值
$average = collect([['foo' => 30], ['foo' => 10], ['foo' => 20]])->avg();
collect([1, 1, 2, 4])->avg();
-
chunk() 一个集合分割成多个小尺寸的小集合
collect([1,2,3,4,5,6,7])->chunk(4);
-
collapse() 将一个多维数组集合收缩成一个一维数组
collect([[1, 2, 3], [4, 5, 6], [7, 8,9]])->collapse();
-
contains() 判断集合是否包含一个给定项:
$collection = collect(['name' => 'Desk', 'price' => 100]);
$collection->contains('Desk');
6 . count() 返回集合中所有项的数目:collect([1,2,3,4,5])->count();
7 .diff() 将集合和另一个集合或原生 PHP 数组作比较, 返回在前者而不再后者的
$collection = collect([1, 2, 3, 4, 5]);
$diff = $collection->diff([2, 4, 6, 8]);
8 .each 迭代集合中的数据项并传递每个数据项到给定回调:$collection = $collection->each(function ($item, $key) { // });
9 .every() 返回集合中collect([1, 2, 3, 4, 5])->every(2);
10 . except() 根据给定的键,从集合中排除一些元素,返回剩下的collect(['product_id' => 1, 'price' => 100, 'discount' => false])->except(['price', 'discount']);
11 . filter() 通过给定回调过滤集合,只有通过给定测试的数据项才会保留下来
$collection->filter(function ($item) { return $item > 2; });
`collect([1, 2, 3, null, false, '', 0, []])->filter();`
12 . first() 返回通过测试集合的第一个元素:
$collection = collect([1, 2, 3, 4])->first(function ($key, $value) {
return $value > 2;
});
13 .
本文内容由互联网用户自发贡献,版权归作者所有,本社区不拥有所有权,也不承担相关法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件至:jaagool@sina.cn 进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容。