• 你可能需要了解下Laravel集合


    前言

    集合通过 IlluminateSupportCollection 进行实例,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 通过给定的键值过滤集合

    致谢

    感谢你看到这里,希望本篇能够帮助到你。谢谢,还不抓紧去练习下集合?

    原文地址:https://segmentfault.com/a/1190000016758044

  • 相关阅读:
    自省改过
    c语言学习教程1之预定义代码
    tqdm进度条管理
    React-i18next切换中英文
    React怎样实现点击其他地方隐藏弹出的菜单
    遍历对象再取值,获得新值
    Web 用户体验设计提升指南
    antd vue form
    echarts 内容显示值在图中显示,不显示交互效果,只是静态图
    element-ui中el-table根据浏览器的缩放自适应宽度
  • 原文地址:https://www.cnblogs.com/lalalagq/p/9964429.html
Copyright © 2020-2023  润新知