Laravel框架集合用法实例浅析

作者:CrazyCodes 时间:2024-05-11 10:03:44 

本文实例讲述了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程序设计有所帮助。

来源:https://segmentfault.com/a/1190000016758044

标签:Laravel,集合
0
投稿

猜你喜欢

  • linux centos7安装mysql8的教程

    2024-01-20 21:52:11
  • MySQL如何选择合适的索引

    2024-01-28 05:05:54
  • Python编程调用百度API实现地理位置经纬度坐标转换示例

    2023-12-30 11:44:38
  • vue 路由懒加载详情

    2024-04-28 09:31:25
  • Python 中创建 PostgreSQL 数据库连接池

    2024-01-19 22:33:37
  • 使用 Python 获取 Linux 系统信息的代码

    2022-04-15 06:32:12
  • 一步步教你用python给女朋友写个微信自动提醒的程序

    2022-09-03 16:50:25
  • YUI学习笔记(4)

    2009-03-10 18:25:00
  • 使用python 获取进程pid号的方法

    2023-06-11 21:25:52
  • 双击编辑功能如何实现

    2008-02-26 16:17:00
  • Python实现获取邮箱内容并解析的方法示例

    2021-07-31 01:40:11
  • 安装Anaconda3及使用Jupyter的方法

    2022-04-13 18:15:21
  • git rebase 成功之后撤销的操作方法

    2022-08-27 17:39:47
  • Python3实现捕获Ctrl+C终止信号

    2021-10-17 14:03:55
  • Python超详细分步解析随机漫步

    2022-03-04 07:14:08
  • t-sql清空表数据的两种方式示例(truncate and delete)

    2024-01-20 09:46:24
  • zabbix监控MySQL主从状态的方法详解

    2024-01-22 00:29:24
  • 不支持RSS,如何跟踪网站的内容更新?

    2008-09-08 12:38:00
  • Python3中的json模块使用详解

    2021-09-27 22:21:22
  • php字符串截取函数mb_substr用法实例分析

    2024-05-02 17:35:09
  • asp之家 网络编程 m.aspxhome.com