22.Laravel集合的使用

学习要点:
1.创建集合
2.集合方法
本节课我们来开始学习数据集合的创建和使用方法。
一.创建集合
1. 什么是集合?即:它是一种更具读取性和处理能力的数组封装;
2. 比如,我们从数据库得到的数据列表,它就是一种集合;
3. 数据集合,提供了大量的方法方便我们进行各种操作;
4. 除了数据库对象返回的数据集合之外,我们还可以自行创建数据集合;
//创建一个数据集合
$collection = collect(['张三', '李四', '王五', null]);
//使用 dd 查看它的类型
dd($collection);
//直接 return 可以返回
return $collection;
5. 数据集合提供了大概有三十多个(31?)处理数据集合的方法,可链式调用;
6. 这里我们把最常用的演示一遍,剩下的所有,可以自行参考手册方法列表;

//以底层数组形式输出
return $collection->all();
//map 方法,类似访问器,可修改输出
return $collection->map(function ($value, $key) {
return $key.'['.$value.']';
});
//支持链式,reject 移出非 true 的值
return $collection->reject(function ($value, $key) {
return $value === null;
})->map(function ($value, $key) {
return $key.'['.$value.']';
});
//filter 筛选为 true 的值,和 reject 相反
return $collection->filter(function ($value, $key) {
return $value === null;
});
//search 找到后返回 key,找不到返回 false
return $collection->search('王五');
//集合的分割
return $collection->chunk(2);
//迭代输出
$collection->each(function ($item, $key) {
echo $item;
});


PS:这里就介绍这么多,更多的我们去手册扫一遍。做项目时,凭着记忆回头查,慢慢就熟了;
PS:下一节,我们会花一节课,把最常用的方法再运行一遍加深印象;
7. 如果三十多个方法都没有你要的,还可以自定义方法,比如说所有英文大写;
$collection = collect(['Mr.Zhang', '李四', '王五', null]);
Collection::macro('toUpper', function () {
//dd($this);
return $this->map(function ($value) {
return strtoupper($value);
});
});
return $collection->toUpper();

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值