PHP中數組合並的兩種方法及區別介紹,需要的朋友可以參考下
PHP數組合並兩種方法及區別
如果是關聯數組,如下:
複製程式碼 程式碼如下:
$a = array(
'where' => 'uid=1',
'order' => 'uid',
);
$b = array(
'where' => 'uid=2',
'order' => 'uid desc',
);
1. array_merge,如果兩個陣列存在相同的key,後面的一個會覆蓋前面的
複製程式碼 程式碼如下:
$c = array_merge($a, $b);
var_export($c);//結果與原來的$b相同
$d = array_merge($b, $a);
var_export($d);//結果與原來的$a相同
# 2. "+"運算子,如果兩個陣列存在相同的key,前面的一個會覆寫後面的
複製程式碼 程式碼如下:
$c = $a + $b;
var_export($c);//結果與原來的$a相同
$d = $b + $a;
var_export($d);//結果與原來的$b相同
#如果是數字索引數組,如下:
複製程式碼 程式碼如下:
$a = array(
1 => '1111111',
2 => '222222222'
);
$b = array(
4 => '33333333333',
1 => '444444444'
);
1. array_merge.效果類似程式碼foreach每個數組元素,然後將每個元素壓入一個新堆疊當中
#複製程式碼 程式碼如下:
< ;?php
$c = array_merge($a, $b);
var_export($c);
$d = array_merge($b, $a);
var_export($d) ;
輸出:
array (
0 => '1111111',
1 => '222222222',
2 => ' 33333333333',
3 => '444444444',
)
array (
0 => '33333333333',
1 => '444444444',
2 = > '1111111',
3 => '222222222',
)
2. "+"運算子.效果類似程式碼foreach每個陣列元素,然後將每個元素壓入一個新堆疊當中,如果同樣的key已經存在則不處理
複製程式碼 程式碼如下:
$c = $a + $b;
var_export($c);
$d = $b + $a;
var_export($d);
輸出:
array (
1 => '1111111',
2 => '222222222',
4 => '33333333333',
)
array (
4 => '33333333333',
1 => '444444444',
2 => '222222222',
)
以上是PHP數組合併的方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!