创建集合:

//数组1
$connection = collect([
['name'=>'jack','age'=>'18','email'=>'ceshi@qq.com'],
['name'=>'emma','age'=>'17','email'=>'test@qq.com'],
['name'=>'kevin','age'=>'19','email'=>'ceshi@163.com'],
['name'=>'william','age'=>'20','email'=>'test@163.com'],
]); //数组2
$connection2 = collect([3,5,2,4,1]); //数组3
$connection3 = collect(['name'=>'jack','age'=>'18','email'=>'ceshi@qq.com']);

计算平均值:

$connection->avg('age');//多维数组
$connection->avg();//一维数组

计算总数:

$connection->count();

计算集合中每个值的出现次数:

$connection->countBy(function($value) {
return substr(strrchr($value['email'], "@"), 1);
});

返回两个集合中差值集合:

$connection2->diff([2,3,4]);

返回满足运算结果的第一条数据:

$connection->first(function($value) {
return $value['age'] > 2;
});

多维数组转化成一维数组:

$connection->flatten();

获取指定键的值:

$connection3->get('name');

判断键是否存在:

$connection3->has('name');

移出最后一个值:

$connection2->pop();

获取指定键信息并删除:

$connection3->pull('email');

追加信息:

$connection2->push(6);

追加数组信息:

$connection3->put('sex', 'boy');

返回指定元素个数之后的数据:

$connection3->slice(1);

正序排序:

$connection2->sort();//只排序,不修改下标
$connection2->sort()->values();//排序并修改下标

倒序倒序:

$connection2->sortDesc();//只排序,不修改下标
$connection2->sortDesc()->values();//排序并修改下标

获取符合条件的数据:

$connection->where('age', '>', 18);

将集合分割为指定大小的块:

$connection2->chunk(2);

参考文档:
https://learnku.com/docs/laravel/8.x/collections/9390
https://learnku.com/articles/20894
https://learnku.com/laravel/t/12571/remember-a-performance-optimization-for-laravel-permission-projects(此篇与本博客无关,若感兴趣可以看看)

【版权申明】未经博主同意,谢绝转载!(请尊重原创,博主保留追究权) https://www.cnblogs.com/facetwitter/p/15812694.html

laravel常用集合的使用的更多相关文章

  1. 比较Java中几个常用集合添加元素的效率

    初始化需要进行比较的集合,统一增加10万个元素,获取整个过程的执行时间. 1.List集合增加元素 private static void testList() { List<Integer&g ...

  2. .NET基础 (09)常用集合和泛型

    常用集合和泛型1 int[]是引用类型还是值类型2 数组之间如何进行转换3 解释泛型的基本原理4 什么是泛型的主要约束和次要约束 常用集合和泛型1 int[]是引用类型还是值类型 数组类型是一族类型, ...

  3. C#常用集合

    数组的缺点:长度固定.因此引入集合的使用. 注:泛型集合更安全,性能更高. 常用集合 对应泛型 ①动态数组ArrayList    List<T> 常用方法属性:Add  Clear  C ...

  4. golang实现常用集合原理介绍

    golang本身对常用集合的封装还是比较少的,主要有数组(切片).双向链表.堆等.在工作中可能用到其他常用的集合,于是我自己对常用的集合进行了封装,并对原理做了简单介绍,代码库地址:https://g ...

  5. Java常用集合笔记

    最近事情比较少,闲暇之余温习巩固一下Java的一些基础知识,并做一些笔记, Java常用集合, 主要参考的这篇文章:Java常用集合 ArrayList/Vertor 1. ArrayList 的主要 ...

  6. Java中常用集合操作

    一.Map 名值对存储的. 常用派生类HashMap类 添加: put(key,value)往集合里添加数据 删除: clear()删除所有 remove(key)清除单个,根据k来找 获取: siz ...

  7. java常用集合详解 contains

    java集合是对常用数据集合的封装,差不多就是数组吧,验证某个元素是否在数据集合里,最原始的方法是,用个循环,"某个元素"与数据集合中的每个元素逐个进行比较. java 对常用的一 ...

  8. C#常用集合的使用(转载)

    大多数集合都在System.Collections,System.Collections.Generic两个命名空间.其中System.Collections.Generic专门用于泛型集合. 针对特 ...

  9. C#常用集合的使用

    大多数集合都在System.Collections,System.Collections.Generic两个命名空间.其中System.Collections.Generic专门用于泛型集合. 针对特 ...

  10. JAVA常用集合源码解析系列-ArrayList源码解析(基于JDK8)

    文章系作者原创,如有转载请注明出处,如有雷同,那就雷同吧~(who care!) 一.写在前面 这是源码分析计划的第一篇,博主准备把一些常用的集合源码过一遍,比如:ArrayList.HashMap及 ...

随机推荐

  1. jquery获得标签元素

    一.根据元素name值获取元素 $("元素[name="name的值"]"); 例子:1.$("a[name="apoint"]& ...

  2. vue中使用xlsx 导出表格

         <t-table v-show="false" id="exportTab" row-key="index" :data=& ...

  3. 若依-更换数据库-sqlite

    基础 我是在ruoyi-vue已经安装了mybatis-plus的基础上进行的修改 关于SQLite SQLite 是一个软件库,实现了自给自足的.无服务器的.零配置的.事务性的 SQL 数据库引擎. ...

  4. PKU2506Tiling

    https://blog.csdn.net/Harington/article/details/86612106

  5. h5端安装调试工具,react版(但不限于react,vue等)

    首先 npm install vconsole -S 其次在非生产环境的时候可以使用 import VConsole from 'vconsole'; const vConsole = new VCo ...

  6. list变成String类型

    list变成String类型 CollectionUtils.isEmpty(vo.getImgs())?"" : String.join(";", (Stri ...

  7. 使用windows平板学习与办公的一些经历(酷比魔方i9篇)

    大概是在2019年的时候,我在某平台上购买了900元的二手windows平板电脑,酷比魔方i9 首先谈谈背景.当时我手里是有个笔记本,屏幕大概15.6寸,4G+256G的,平时用的时候功率平均20几W ...

  8. awk 计算

    [root@BJ-DATABASES lastday]# ps -aux| grep nginx|grep -v greproot 13783 0.0 0.0 56796 1208 ? Ss 11:1 ...

  9. CentOS 7关闭防火墙 SElinux 配ip

    屏蔽出站 iptables -t filter -A OUTPUT --dst 192.168.0.191/32 -j DROP iptables -t filter -A OUTPUT --dst ...

  10. 「SOL」网络流flow (模拟赛)

    题面 给定一张分层有向图,有 \(n\) 层,每层有 \(m\) 个点.只有从第 \(i\) 层的点连向第 \(i + 1\) 层的点的连边. 记 \(A(i,j)\) 表示从第 \(i\) 层的某些 ...