2 回答

TA貢獻1847條經驗 獲得超11個贊
$arr2 = array_column($array2, "ID");
$finalArray = array();
foreach($array1 as $arr){
//Get the index of ID which exist in array2. And store in search variable.
$search = array_keys($arr2, $arr['ID']);
if(!$search){
//If ID not exit in array-2, get the index of that ID and store in search variable.
$key = array_search(0, $arr2);
$search[0] = $key;
unset($array2[$key]['ID']);
}
//Fetch search item and merge.
foreach($search as $value){
$finalArray[] = array_merge($arr,$array2[$value]);
}
}
echo "<pre>";
print_r($finalArray);

TA貢獻1891條經驗 獲得超3個贊
使結果數組成為以 ID 為鍵的關聯數組。您可以將第一個數組的元素復制到結果中,然后添加第二個數組中的數量。
$finalResult = [];
foreach ($array1 as $arr) {
$finalResult[$arr['ID']] = $arr;
}
foreach ($array2 as $row) {
$id = $row['ID'];
unset($row['ID']);
foreach ($row as $col => $value) {
if (empty($finalResult[$id][$col])) {
$finalResult[$id][$col] = $value;
} else {
$finalResult[$id][$col] += $value;
}
}
}
- 2 回答
- 0 關注
- 200 瀏覽
添加回答
舉報