- 1、本文档共21页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
服务 ―― 集合
服务 —— 集合
1、简介
Illuminate\Support\Collection类为处理数组数据提供了平滑、⽅便的封
装。例如,查看下⾯的代码,我们使 帮助函数collect创建⼀个新的集合实例,为
每⼀个元素运⾏strtoupper函数,然后移除所有空元素:
$collection = collect([taylor, abigail, null])-map( unction (
return strtoupper($name);
})-reject( unction ($name) {
return empty($name);
});
正如你所看到的,Collection类允许你使 ⽅法链对底层数组执⾏匹配和减少操
作,通常,没个Collection⽅法都会返回⼀个新的Collection实例。
2、创建集合
正如上⾯所提到的,帮助函数collect为给定数组返回⼀个新的
Illuminate\Support\Collection实例,所以,创建集合很简单:
$collection = collect([1, 2, 3]);
默认情况下,Eloquent模型的集合总是返回Collection实例,此外,不管是在何
处,只要⽅法都可以⾃由使 Collection类。
3、集合⽅法列表
本⽂档接下来的部分我们将会讨论Collection类上每⼀个有效的⽅法,所有这些⽅
法都可以以⽅法链的⽅式平滑的操作底层数组。此外,⼏乎每个⽅法返回⼀个新的
Collection实例,允许你在必要的时候保持原来的集合备份。
all()
all⽅法简单返回集合表⽰的底层数组:
collect([1, 2, 3])-all();
// [1, 2, 3]
chunk()
chunk⽅法将⼀个集合分割成多个⼩尺⼨的⼩集合:
$collection = collect([1, 2, 3, 4, 5, 6, 7]);
$chunks = $collection-chunk(4);
$chunks-toArray();
// [[1, 2, 3, 4], [5, 6, 7]]
当处理栅栏系统如Bootstrap 时该⽅法在视图中尤其有 ,建设你有⼀个想要显⽰在栅
栏中的Eloquent模型集合:
@ oreach ($products-chunk(3) as $chunk)
div class=row
@ oreach ($chunk as $product)
div class=col-xs-4{{ $product-name }}/div
@end oreach
/div
@end oreach
collapse()
collapse⽅法将⼀个多维数组集合收缩成⼀个⼀维数组:
$collection = collect([[1, 2, 3], [4, 5, 6], [7, 8, 9]]);
$collapsed = $collection-collapse();
$collapsed-all();
// [1, 2, 3, 4, 5, 6, 7, 8, 9]
contains()
contains⽅法判断集合是否包含⼀个给定项:
$collection = collect([name = Desk, price = 100]);
$collection-contains(Desk);
// true
$collection-contains(New York);
// alse
你还可以传递⼀个键值对到contains⽅法,这将会判断给定键值对是否存在于集合
中:
$collection = collect([
[product = Desk, price = 200],
[product = Chair, price = 100],
]);
$collection-contains(product, Bookcase);
// alse
最后,你还可以传递⼀个回调到contains⽅法来执⾏⾃⼰的真实测试:
$collection = collect([1, 2, 3, 4, 5]);
$collection-contains( unction ($key, $value) {
return $
您可能关注的文档
- 网络存储备份技术教材.ppt
- 桩基础作业(附答案)课件.doc
- 注册会计师事务所文化建设分析解析.doc
- 专利电子申请CPC客户端操作常见问题解析.doc
- 第三章 电大期末考试《计算机网络》模拟题.doc
- 专业术语目录课件.doc
- 第九章 编译原理2006期末考试试卷A答案.doc
- 注码符号标注位置刍议解析.doc
- 网络测试 命令大全教材.doc
- 在VB中实现文件上传资料.doc
- 《GB/T 12668.7202-2024调速电气传动系统 第7-202部分:电气传动系统的通用接口和使用规范 2型规范说明》.pdf
- 《GB/T 15692-2024制药机械 术语》.pdf
- GB/T 15692-2024制药机械 术语.pdf
- 中国国家标准 GB/T 15692-2024制药机械 术语.pdf
- GB/T 19633.1-2024最终灭菌医疗器械包装 第1部分:材料、无菌屏障系统和包装系统的要求.pdf
- 中国国家标准 GB/T 19633.1-2024最终灭菌医疗器械包装 第1部分:材料、无菌屏障系统和包装系统的要求.pdf
- 《GB/T 19633.1-2024最终灭菌医疗器械包装 第1部分:材料、无菌屏障系统和包装系统的要求》.pdf
- 《GB/T 30117.1-2024非相干光产品的光生物安全 第1部分:通用要求》.pdf
- 《GB/T 33348-2024高压直流输电用电压源换流器阀 电气试验》.pdf
- GB/T 33348-2024高压直流输电用电压源换流器阀 电气试验.pdf
文档评论(0)