Laravel-集合

Laravel中的数组,源代码位置Illuminate\Support\Arr.php;

Laravel中的集合,源代码位置Illuminate\Support\Collection.php;

集合是对数组的再次封装,以对象的形式呈现;提供了很多方法功能(这些方法内部大多采用了回调函数),比数组形式的操作要灵活多了;

本质上就是用面向对象的形式操作元素和以数组形式操作元素的区别;如果以对象操作,如vika_倾慕说的,可以链式操作;如果按照数组操作,会产生很多中间临时变量或者语句,代码显得冗长;



集合比数组更强大的地方是其使用了各种 map / reduce 的直观操作,例如,我们移除所有未激活的用户模型和收集其余各个用户的名字:

$users = App\User::where('active',1)->get();

$names = $users->reject(function($user){

           return$user->active ===false;

})

->map(function($user){

           return$user->name;

});

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,120评论 19 139
  • 先说几句废话,调和气氛。事情的起由来自客户需求频繁变更,伟大的师傅决定横刀立马的改革使用新的框架(created ...
    wsdadan阅读 8,277评论 0 12
  • 过去做事情急,什么东西拿起来就用,不喜欢进行系统性的学习,造成在使用过程中的错误和低效,现在感觉自己耐心多了,用之...
    马文Marvin阅读 6,133评论 0 10
  • 原文链接 必备品 文档:Documentation API:API Reference 视频:Laracasts ...
    layjoy阅读 12,728评论 0 121
  • 若想给自己的美丽加分,那么一口整齐,洁白的牙齿必不可少,灰暗发黄的牙齿了只能让你“难以启齿”。 我们...
    美肤达人巧巧阅读 2,738评论 0 0

友情链接更多精彩内容