PHP根據鍵值合併陣列

2020-07-16 10:06:01

我們現在來分析一下在PHP開發過程中,如何合併兩個陣列,並且將相同鍵值的元素合併在一起。

範例1

最簡單的合併方式

$a = [
   1=>'a',
   2=>'b',
   3=>'c'
];
$b = [
   3=>'e',
   4=>'f',
   5=>'c'
];
$c = $a+$b;
print_r($c);

輸出:

Array ( [1] => a [2] => b [3] => c [4] => f [5] => c )

分析:$a[3]覆蓋了$b[3],當陣列存在相同鍵值的元素時,前面的陣列將會後面相同鍵值的陣列元素

範例2

用foreach迴圈賦值的方法

$a = [
   1=>'a',
   2=>'b',
   3=>'c'
];
$b = [
   3=>'e',
   4=>'f',
   5=>'a'
];
foreach ($b as $key => $val) {
   $a[$key] = $val;
}
print_r($a);

輸出:

Array ( [1] => a [2] => b [3] => e [4] => f [5] => a )

分析:和範例1有點區別

用於做回圈的陣列$b將會覆蓋陣列$a的元素,而且只覆蓋鍵值相同的元素

相關函數:

array_merge

array_intersect

array_intersect_ukey

array_intersect_uassoc

array_intersect_key

array_intersect_assoc

以上就是PHP根據鍵值合併陣列的詳細內容,更多請關注TW511.COM其它相關文章!