laravel map方法踩坑记录

偏执的太偏执、 2023-06-30 06:50 90阅读 0赞

用map方法编辑集合的时候,集合中存在关联查询结果是相同的时候,进行修改回出现修改A会影响B的情况

例如

代码逻辑

  1. //以下数据遍历第一次的时候,修改$item新增属性node_type,会影响第二次编辑的$item中也会node_type属性
  2. $collect->map(function($item){
  3. $item->node_type=$item->type;
  4. });

这里是数据

  1. dump($collect->toArray());
  2. //输出结构如下
  3. array:2 [
  4. 0 => array:9 [
  5. "id" => 5
  6. "role_id" => 4
  7. "node_id" => 247
  8. "cable_node_id" => 9
  9. "optical_cable_id" => 116
  10. "created_at" => "2020-01-14 16:52:36"
  11. "updated_at" => "2020-01-14 16:52:36"
  12. "cable_node" => array:9 [
  13. "id" => 9
  14. "name" => "节点3发达"
  15. "status" => 1
  16. "parent_id" => 0
  17. "type" => 1
  18. "role_id" => 4
  19. "created_at" => "2019-11-07 19:00:33"
  20. "updated_at" => "2019-11-30 15:03:00"
  21. ]
  22. ]
  23. 1 => array:9 [
  24. "id" => 7
  25. "role_id" => 4
  26. "node_id" => 146
  27. "cable_node_id" => 9
  28. "optical_cable_id" => 116
  29. "created_at" => "2020-01-15 10:32:49"
  30. "updated_at" => "2020-01-15 10:32:49"
  31. "cable_node" => array:9 [
  32. "id" => 9
  33. "name" => "节点3发达"
  34. "status" => 1
  35. "parent_id" => 0
  36. "type" => 1
  37. "role_id" => 4
  38. "created_at" => "2019-11-07 19:00:33"
  39. "updated_at" => "2019-11-30 15:03:00"
  40. ]
  41. ]
  42. ]

发表评论

表情:
评论列表 (有 0 条评论,90人围观)

还没有评论,来说两句吧...

相关阅读

    相关 springboot记录

    使用sts,或者是官方的地址新建springboot项目,导入到myeclipse,项目pom文件第一行报错,无任何错误信息,提示unknown,尝试过换maven和jdk版本

    相关 Array.prototype.map()

    [js中map方法到底是否会改变原始数组?][js_map] [js map前后的值一样][js map] map方法不改变原数组,而是返回一个新数组。 原数组是值类型时

    相关 npm记录

    记录使用npm过程中遇到的问题,免得再遇到时还到处搜索 配置npm转到淘宝镜像 安装npm后,默认是使用国外镜像的,所以不翻墙速度简直龟速,使用淘宝镜像就比较快了,切换

    相关 日常记录

    心得 严格的去思考问题,处理问题,有开发责任心,严格要求自己的代码编写习惯与风格 开发踩坑记录,不定时更新 日常踩坑记录 注意 单词拼写!!! 2020

    相关 grafana记录

    1.鼠标移动悬停时数据不变更 鼠标悬停时,数据时间一直不变更,这样鼠标移动时,就没法一眼看出正确数据。比如图中,鼠标悬停在8-29了,但是数据详情还是8-27. ![