如何将多维数组处理为按供应商分组的指定结构数组?
PHP多维数组分组转换实现
你可以通过遍历原数组,按供应商名称分组并收集对应零件ID的方式实现目标结构,具体代码如下:
// 假设这是你循环获取到的原数组 $originalArray = [ ['part_id' => 2338117, 'supplier' => 'COOLDRIVE DISTRIBUTION', 'quantity' => 12], ['part_id' => 2338117, 'supplier' => 'ROLAN', 'quantity' => 20], ['part_id' => 51154, 'supplier' => 'ROLAN', 'quantity' => 20], ]; $targetArray = []; foreach ($originalArray as $item) { $supplier = $item['supplier']; $partId = $item['part_id']; // 若当前供应商未在目标数组中,初始化对应结构 if (!isset($targetArray[$supplier])) { $targetArray[$supplier] = ['productID' => []]; } // 将零件ID追加到对应供应商的列表中 $targetArray[$supplier]['productID'][] = $partId; } // 输出结果 print_r($targetArray);
说明
- 代码会自动按供应商分组,同一个供应商下的所有零件ID会被收集到
productID数组中 - 注意目标示例里的
proudctID是拼写错误,代码中使用了正确的productID,如果需要完全匹配错误拼写,可将代码中的productID替换为proudctID
内容的提问来源于stack exchange,提问作者Soyas
相关产品推荐
相关产品推荐

