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 相关文章推荐
动易数据转成dedecms的php程序
Apr 07 PHP
逆序二维数组插入一元素的php代码
Jun 08 PHP
php判断终端是手机还是电脑访问网站的思路及代码
Apr 24 PHP
PHP中redis的用法深入解析
Feb 20 PHP
PHP中error_log()函数的使用方法
Jan 20 PHP
php通过array_unshift函数添加多个变量到数组前端的方法
Mar 18 PHP
php对二维数组进行相关操作(排序、转换、去空白等)
Nov 04 PHP
使用php自动备份数据库表的实现方法
Jul 28 PHP
PHP开发中解决并发问题的几种实现方法分析
Nov 13 PHP
win7 wamp 64位 php环境开启curl服务遇到的问题及解决方法
Sep 16 PHP
PHP使用观察者模式处理异常信息的方法详解
Sep 24 PHP
Thinkphp 在api开发中异常返回依然是html的解决方式
Oct 16 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 static局部静态变量和全局静态变量总结
2014/03/02 PHP
destoon实现商铺管理主页设置增加新菜单的方法
2014/06/26 PHP
thinkPHP实现递归循环栏目并按照树形结构无限极输出的方法
2016/05/19 PHP
CentOS 上搭建 PHP7 开发测试环境
2017/02/26 PHP
PHP中Session ID的实现原理实例分析
2019/08/17 PHP
巧妙破除网页右键禁用的十大绝招
2006/08/12 Javascript
表单JS弹出填写提示效果代码
2011/04/16 Javascript
JS批量操作CSS属性详细解析
2013/12/16 Javascript
jQuery实现异步获取json数据的2种方式
2014/08/29 Javascript
Javascript表单验证要注意的事项
2014/09/29 Javascript
JS往数组中添加项性能分析
2015/02/25 Javascript
jQuery处理图片加载失败的常用方法
2015/06/08 Javascript
JavaScript知识点总结(六)之JavaScript判断变量数据类型
2016/05/31 Javascript
jQuery查找节点并获取节点属性的方法
2016/09/09 Javascript
Angular中支持SCSS的方法
2017/11/18 Javascript
如何制作一个Node命令行图像识别工具
2018/12/12 Javascript
Vue组件之高德地图地址选择功能的实例代码
2019/06/21 Javascript
微信小程序12行js代码自己写个滑块功能(推荐)
2020/07/15 Javascript
[02:51]DOTA2 Supermajor小组分组对阵抽签仪式
2018/06/01 DOTA
Python MySQL数据库连接池组件pymysqlpool详解
2017/07/07 Python
Python使用pymysql从MySQL数据库中读出数据的方法
2018/07/25 Python
Python版名片管理系统
2018/11/30 Python
tensorflow实现tensor中满足某一条件的数值取出组成新的tensor
2020/01/04 Python
在 Linux/Mac 下为Python函数添加超时时间的方法
2020/02/20 Python
在keras里实现自定义上采样层
2020/06/28 Python
可以随进度显示不同颜色的css3进度条分享
2014/04/11 HTML / CSS
HTML5适合的情人节礼物有纪念日期功能
2021/01/25 HTML / CSS
Columbia美国官网:美国著名的户外服装品牌
2016/11/24 全球购物
美国汽配连锁巨头Pep Boys官网:轮胎更换、汽车维修服务和汽车零部件
2017/01/14 全球购物
Net-A-Porter美国官网:全球时尚奢侈品名站
2017/02/11 全球购物
澳大利亚购买最佳炊具品牌网站:Cookware Brands
2019/02/16 全球购物
日常奢侈品,轻松购物:Verishop
2019/08/20 全球购物
公司市场部岗位职责
2013/12/02 职场文书
教师先进工作者事迹材料
2014/05/01 职场文书
户籍证明书标准模板
2014/09/10 职场文书
签字仪式主持词
2015/07/03 职场文书