Laravel 的 Collection 类其实有很多非常实用的方法,对于我们在优化循环的时候非常的有用,我们的目标就是:不再写
foreach
循环 !
我们会学习到 flatMap
map
sum
等非常实用的方法
collect($arr)->pluck('order_products.*.price')->flatten(1)->sum();
希望加深 map
的理解和 map
的应用场景
通过 API 后获取到数据,将数据转化为得分的一种机制,首先会尝试 foreach
的方式,然后再用 Laravel 的 Collection 来优化和重构
https://api.github.com/users/...
常规解法:
collection重构:
Laravel Collection 中的 implode
方法其实在某些场景之下非常的有用,结合 map
,我们就可以对每个元素进行自由度很高的格式自定义,本节视频是普通格式转 Markdown
格式
在之前的示例当中,我们都是对一个数组进行优化和重构。这节学习使用 zip
方法来解决两个数组的情况。
在 Laravel Collection 当中,还有一个非常常用的方法:reduce
,这对于我们在创建 lookup 数组的时候非常的有用,这样就可以使用 Collection 重构一个复杂的数组,将它变成简单 key value 这样的 lookup 数组。
或者:
collect($employees)->pluck('email','name')
在处理订单问题的时候,会遇到各种各样的汇总问题,比如每天的销售额汇总,每天的供应商汇总等,这个视频中会学习 sum
方法的黑科技和一些 groupBy
的常见应用场景