首页 > 解决方案 > 如何将 Array 中的数组与 foreach 循环合并?

问题描述

我有这个数组,从数据库输出,我用 FETH_GROUP | 获取它 FETCH_ASSOC 根据唯一 ID 生成输出值:

  array (size=440)

  'P9-6/01/2018/091443/0001' => 
    array (size=2)
      0 => 
        array (size=1)
          'Bid' => string 'Dagadu Bocah' (length=12)
      1 => 
        array (size=1)
          'Bid' => string 'Dagadu Bocah' (length=12)
  'P7-6/01/2018/091815/0001' => 
    array (size=2)
      0 => 
        array (size=1)
          'Bid' => string 'HirukPikuk' (length=10)
      1 => 
        array (size=1)
          'Bid' => string 'Dagadu' (length=6)
  'P7-6/01/2018/092430/0002' => 
    array (size=4)
      0 => 
        array (size=1)
          'Bid' => string 'HirukPikuk' (length=10)
      1 => 
        array (size=1)
          'Bid' => string 'HirukPikuk' (length=10)
      2 => 
        array (size=1)
          'Bid' => string 'HirukPikuk' (length=10)
      3 => 
        array (size=1)
          'Bid' => string 'DGD' (length=3)
.....

所以我想将每个 id 中的数组合并为一个数组,目标如下:

    'P9-6/01/2018/091443/0001' => 
    array (size=2)
          'Bid' => string 'Dagadu Bocah' (length=12)
          'Bid' => string 'Dagadu Bocah' (length=12)   
'P7-6/01/2018/091815/0001' => 
    array (size=2)
          'Bid' => string 'HirukPikuk' (length=10)
          'Bid' => string 'Dagadu' (length=6)   
'P7-6/01/2018/092430/0002' => 
    array (size=4)
          'Bid' => string 'HirukPikuk' (length=10)
          'Bid' => string 'HirukPikuk' (length=10)
          'Bid' => string 'HirukPikuk' (length=10)
          'Bid' => string 'DGD' (length=3)

或者,根据我的新知识,数组键不能相同,我需要这样的目标:

        'P9-6/01/2018/091443/0001' => 
    array (size=2)
          'Dagadu Bocah' => string 'Dagadu Bocah' (length=12)
          'Dagadu Bocah' => string 'Dagadu Bocah' (length=12)   
'P7-6/01/2018/091815/0001' => 
    array (size=2)
          'HirukPikuk' => string 'HirukPikuk' (length=10)
          'Dagadu' => string 'Dagadu' (length=6)   
'P7-6/01/2018/092430/0002' => 
    array (size=4)
          'HirukPikuk' => string 'HirukPikuk' (length=10)
          'HirukPikuk' => string 'HirukPikuk' (length=10)
          'HirukPikuk' => string 'HirukPikuk' (length=10)
          'DGD' => string 'DGD' (length=3)

这是我的代码,但不会改变输出中的任何内容:

   $results = $stat->fetchAll(PDO::FETCH_GROUP | PDO::FETCH_ASSOC);
    foreach ($results as $result){
        array_merge($result);
    }
    var_dump($results);

这是我的数据库详细信息:

我的数据库

标签: phparrays

解决方案


推荐阅读