- 1、本文档共21页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
服务 ―― 集合
服务 ―― 集合
服务 —— 集合
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 $
您可能关注的文档
- 星居易-卧室就要舒适简单 5款时尚大气设计推荐.docx
- 星空极速3.2 3.3加密算法.pdf
- 星级酒店管理规定.docx
- 星际争霸2——游戏问题集合.pdf
- 昨日欧洲财长会议初见成效 美元存在短期回调可能.pdf
- 昨天的你的现在的未来吉他谱.docx
- 显微镜的构造及使用方法教程.ppt
- 晋江机场电子IPAM-3802功能简介.doc
- 晚唐状元释褐职任考_唐代状元释褐职任考之三_周腊生.pdf
- 晚稻细菌性条斑病流行趋势预测模型的研究.pdf
- 小学语文教学:社区应急避难场所规划与文学创作实践研究探讨分析教学研究课题报告.docx
- AI在企业内部控制流程中的效率提升路径.docx
- 家庭数字环境在初中生物实验课堂中的辅助教学作用探讨教学研究课题报告.docx
- 初中物理家庭数字环境构建与实验现象分析能力培养教学研究课题报告.docx
- 人工智能教育资源共享平台中用户画像构建与个性化推荐策略教学研究课题报告.docx
- 《幼儿园主题活动与幼儿社会交往能力发展的相关性实证研究》教学研究课题报告.docx
- 财务共享背景下审计效率的优化空间与潜力.docx
- 工程质量管理措施.docx
- 2025至2030年中国篦梳行业投资前景及策略咨询研究报告.docx
- 计算机基础考试模拟题含答案.docx
文档评论(0)