Laravel框架集合用法实例浅析


Posted in PHP onMay 14, 2020

本文实例讲述了Laravel框架集合用法。分享给大家供大家参考,具体如下:

前言

集合通过 Illuminate\Support\Collection 进行实例,Laravel的内核大部分的参数传递都用到了集合,但这并不代表集合就是好的。Laravel作为快捷并优雅的开发框架,是有他一定的道理所在的,并非因他的路由、DB、监听器等等。当你需要处理一组数组时,你可能就需要它帮助你快捷的解决实际问题。

创建集合

$collection = collect([1, 2, 3]);

显而易见,这是一部非常简单的操作,请打住你想说“这种操作很复杂”的话,它更类似与早起PHP5.x的版本的声明方式。

$collection = array(1,2,3);

laravel对于collection也没有做任何复杂的事情,会在下一章 《Laravel源码解析之集合》,谢谢

打回原型

如果你想将集合转换为数据,其使用方法也非常的简单

collect([1, 2, 3])->all();
------>
[1, 2, 3]

在不过与考虑性能的情况下,可以使用Laravel集合,毕竟它将帮你完成数组操作的百分之九十的工作。
例如我们需要通过一个水平线切分数组,将其分为2个及以上的数组个数。使用集合可以酱紫做~

$collection = collect([1, 2, 3, 4, 5, 6, 7]);

$chunks = $collection->chunk(4);

$chunks->toArray();

// [[1, 2, 3, 4], [5, 6, 7]]

并且有些还根据sql语句的查询方式来设计的方法,下面就让来看下具体都有哪些吧。

方法列表

这里列出一些常用的集合操作方法,具体及全部请操作官方。

方法 注释
all 将集合打回原型
average & avg 计算平均值
chunk 将集合拆成多个指定大小的小集合
collapse 将多个数组的集合合并成一个数组的集合
combine 可以将一个集合的值作为「键」,再将另一个数组或者集合的值作为「值」合并成一个集合
concat 将给定的数组或集合值附加到集合的末尾
contains 判断集合是否包含给定的项目
count 返回该集合内的项目总数
dd 打印集合的项目并结束脚本执行
diff 将集合与其它集合或纯 PHP 数组进行值的比较,然后返回原集合中存在而给定集合中不存在的值
each 迭代集合中的内容并将其传递到回调函数中
filter 使用给定的回调函数过滤集合的内容,只留下那些通过给定真实测试的内容
first 返回集合中通过给定真实测试的第一个元素
groupBy 根据给定的键对集合内的项目进行分组
push 把给定值添加到集合的末尾
put 在集合内设置给定的键值对
sortBy 通过给定的键对集合进行排序。排序后的集合保留了原数组键
where 通过给定的键值过滤集合

希望本文所述对大家基于Laravel框架的PHP程序设计有所帮助。

PHP 相关文章推荐
利用递归把多维数组转为一维数组的函数
Oct 09 PHP
php 设计模式之 工厂模式
Dec 19 PHP
PHP 程序授权验证开发思路
Jul 09 PHP
PHP 自定义错误处理函数的使用详解
May 10 PHP
浅析php header 跳转
Jun 17 PHP
php制作中间带自己定义图片二维码的方法
Jan 27 PHP
smarty模板局部缓存方法使用示例
Jun 17 PHP
PHP实现视频文件上传完整实例
Aug 28 PHP
安装ImageMagick出现error while loading shared libraries的解决方法
Sep 23 PHP
php解决和避免form表单重复提交的几种方法
Aug 31 PHP
PHP扩展Swoole实现实时异步任务队列示例
Apr 13 PHP
PHP基础之输出缓冲区基本概念、原理分析
Jun 19 PHP
Laravel框架源码解析之模型Model原理与用法解析
May 14 #PHP
Laravel框架源码解析之入口文件原理分析
May 14 #PHP
Laravel框架源码解析之反射的使用详解
May 14 #PHP
PHP 数组操作详解【遍历、指针、函数等】
May 13 #PHP
ThinkPHP5 框架引入 Go AOP,PHP AOP编程项目详解
May 12 #PHP
php中用unset销毁变量并释放内存
May 10 #PHP
php屏蔽错误及提示的方法
May 10 #PHP
You might like
PHP strtotime函数用法、实现原理和源码分析
2015/02/04 PHP
php遍历删除整个目录及文件的方法
2015/03/13 PHP
PHP使用mongoclient简单操作mongodb数据库示例
2019/02/08 PHP
php 实现简单的登录功能示例【基于thinkPHP框架】
2019/12/02 PHP
在Javascript中为String对象添加trim,ltrim,rtrim方法
2006/09/22 Javascript
jQuery autocomplete插件修改
2009/04/17 Javascript
Javascript 判断函数类型完美解决方案
2009/09/02 Javascript
js实现window.open不被拦截的解决方法汇总
2014/10/30 Javascript
jQuery中prepend()方法用法实例
2014/12/25 Javascript
jquery中toggle函数交替使用问题
2015/06/22 Javascript
js电话号码验证方法
2015/09/28 Javascript
js实现文字滚动效果
2016/03/03 Javascript
touch.js 拖动、缩放、旋转 (鼠标手势)功能代码
2017/02/04 Javascript
详解vue.js的devtools安装
2017/05/26 Javascript
微信小程序 input输入及动态设置按钮的实现
2017/10/27 Javascript
详解使用webpack打包编写一个vue-toast插件
2017/11/08 Javascript
跟老齐学Python之私有函数和专有方法
2014/10/24 Python
python GUI库图形界面开发之PyQt5单行文本框控件QLineEdit详细使用方法与实例
2020/02/27 Python
Python实现对adb命令封装
2020/03/06 Python
Django自定义列表 models字段显示方式
2020/04/03 Python
HTML5标签嵌套规则详解【必看】
2016/04/26 HTML / CSS
英国排名第一的最新设计师品牌手表独立零售商:TIC Watches
2016/09/24 全球购物
预订从美国飞往印度的机票:MyTicketsToIndia
2017/05/19 全球购物
国际领先的在线时尚服装和配饰店:DressLily
2019/03/03 全球购物
美国户外烹饪产品购物网站:Outdoor Cooking
2020/01/10 全球购物
中兴通讯全球官方网站:ZTE
2020/12/26 全球购物
教师自我评价范例
2013/09/24 职场文书
法律七进实施方案
2014/03/15 职场文书
高三毕业典礼演讲稿
2014/05/13 职场文书
搞笑车尾标语
2014/06/23 职场文书
大一新生期末自我评价
2014/09/12 职场文书
深入开展党的群众路线教育实践活动心得体会
2014/11/05 职场文书
2014年变电站工作总结
2014/12/19 职场文书
计生个人工作总结
2015/02/28 职场文书
文艺晚会开场白
2015/05/29 职场文书
教你使用一行Python代码玩遍童年的小游戏
2021/08/23 Python