Laravel 中的 ORM 中的 map 是什么意思,怎么用的

laravel中的orm中的map是什么意思,比如

laravel中的orm中的map是什么意思,怎么用的

《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
讨论数量: 13
Complicated

在map方法写一个匿名方法,会对orm查出来的每条记录进行处理

4年前 评论

get()的返回值是一个集合对象,可以先学习集合的文档
集合《Laravel 5.5 中文文档》

4年前 评论
张无忌

@Complicated 那能解读一下我截图的那个查询吗

4年前 评论
半人间 4年前

return 后面的操作,已经不是 ORM 的查询了,是对集合 Collection 的操作了。

map 就是把集合里每个数据处理成 map 的回调函数中,返回的那个值。

array_map 一样,,,

4年前 评论
_杭城浪子 4年前
张无忌

@largezhou 那个 Category $model是什么意思,如果外面的查到2个结果里面map循环2次,那这个参数 Category $model怎么调用的

4年前 评论
张无忌

@largezhou 你没懂我意思

4年前 评论
Complicated

@张无忌 那个$model就是 “集合取where pid=xxx” 的记录,,你就map看成是foreach就行,至于map里面的方法,你就看成是 foreach循环体就好了

4年前 评论
张无忌

@Complicated 去找对应的where pid=xxx 记录 那我不用Category $model这种形式 用$test这种形式,那里面的调用是不是就成了$test->id

4年前 评论

当成array_map函数不可以么,对每行结果进行处理,返回新的集合

4年前 评论

额。我昨晚才用。。map其实等于一个foreach 比如原来你写查询:

// 原来要修改$data里的数据是酱紫写:
$data = model::query()->where(xxx)->get();
foreach($data as &$item) {
    ...
}

// 用map之后
$data = model::query()->where(xxx)->get()->map(function($item) {
    $item[xx] = xxx;
    return $item;
});
4年前 评论

文档文档!!!

4年前 评论
张无忌

@hackxiaoya 明白了

4年前 评论

和 foreach 差不多一个意思

4年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!