资讯专栏INFORMATION COLUMN

PHP 把MYSQL重复ID 二维数组重组为三维数组

Kyxy / 1882人阅读

摘要:应用场景在使用关联查询时,比如产品表与产品图片表关联,一个产品多张产品图片,关联查询结果如下那么,我们要的结果一般是这样的,如下解决方案

应用场景

MYSQL在使用关联查询时,比如 产品表 与 产品图片表关联,一个产品多张产品图片,关联查询结果如下:

$arr=[
    ["id"=>1,"img"=>"img1"],
    ["id"=>1,"img"=>"img2"],
    ["id"=>1,"img"=>"img3"],
    ["id"=>2,"img"=>"img1"],
    ["id"=>2,"img"=>"img2"],
    ["id"=>2,"img"=>"img3"],
    ["id"=>3,"img"=>"img1"],
    ["id"=>3,"img"=>"img2"],
    ["id"=>3,"img"=>"img3"],
]

那么,我们要的结果一般是这样的,如下:

$arr=[
    ["id"=>1,"img"=>["img1","img2","img3"]],
    ["id"=>2,"img"=>["img1","img2","img3"]],
    ["id"=>3,"img"=>["img1","img2","img3"]],
]
解决方案
    $arr=[
        ["id"=>1,"img"=>"img1"],
        ["id"=>1,"img"=>"img2"],
        ["id"=>1,"img"=>"img3"],
        ["id"=>2,"img"=>"img1"],
        ["id"=>2,"img"=>"img2"],
        ["id"=>2,"img"=>"img3"],
        ["id"=>3,"img"=>"img1"],
        ["id"=>3,"img"=>"img2"],
        ["id"=>3,"img"=>"img3"],
    ]
    
    $arr1=array();
    foreach ($arr as $key => $value) {
            
        if( in_array($value["id"], $value)){

          $arr1[$value["id"]]["id"]=$value["id"];
          $arr1[$value["id"]]["img"][]=$value["img"];


        }      
    }

    var_dump($arr1);

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/21802.html

相关文章

  • 【SPL标准库专题(9)】Datastructures:SplFixedArray

    摘要:主要是处理数组相关的主要功能,与普通不同的是,它是固定长度的,且以数字为键名的数组,优势就是比普通的数组处理更快。类摘要方法导入数组,返回对象把对象数组导出为真正的数组由于是定长数组,所以超过定长就会抛出异常。 SplFixedArray主要是处理数组相关的主要功能,与普通php array不同的是,它是固定长度的,且以数字为键名的数组,优势就是比普通的数组处理更快。 类摘要 SplF...

    lindroid 评论0 收藏0
  • numpy数组维度理解终结版

    摘要:写在前面可能你会不相信,我是从玩中过来的,我觉得有必要记录一下,这个坑还非踩不可为了说的清楚一点儿,我多铺垫一点儿,先说说数组维度的理解引子老铁们猜一猜长啥样我猜你还没到点我到底想说啥,还是一头雾水,对吧哈哈别揍我,关子卖的挺大,我到底想说 写在前面 可能你会不相信,我是从玩pytorch中过来的,我觉得有必要记录一下,transpose这个坑还非踩不可,为了说的清楚一点儿,我多铺垫一...

    LeexMuller 评论0 收藏0
  • 887-三维形体投影面积

    摘要:现在,我们查看这些立方体在和平面上的投影。投影就像影子,将三维形体映射到一个二维平面上。返回所有三个投影的总面积。 前言 LeetCode Weekly Contest 96的第一道题目,分值为4分。虽然标注为简单,但是需要有很好的空间想象力。原题目内容如下(由于这个题目需要结合题目中的示例查看,示例为一些图片,所以建议去原站看): 在 N * N 的网格中,我们放置了一些与 x,y,...

    cheukyin 评论0 收藏0
  • 一个 16年毕业生所经历的 PHP 面试

    摘要:正确做法是给加索引,还有联合索引,并不能避免全表扫描。 前言:有收获的话请加颗小星星,没有收获的话可以 反对 没有帮助 举报三连 有心的同学应该会看到我这个noteBook下面的其它知识,希望对你们有些许帮助。 本文地址 时间点:2017-11 一个16年毕业生所经历的php面试 一、什么是面试 二、面试准备 1. 问:什么时候开始准备? 2. 问:怎么准备? 三、面试...

    dabai 评论0 收藏0

发表评论

0条评论

Kyxy

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<