php中陣列合併有兩種方式:array_merge 與 「+」,使用方式如下:
$arr =array_merge($arr1 ,$arr2);
$arr =$arr1 + $arr2 ;
兩種方式看似相同,但使用中 坑 還是不少的。
看下面的例子:
<?php結果如下$arr1=array(3,3476,123,45,45,'a'=>79);
$arr2=array(40,74,435,86,34,3432,'a'=>88);
print_r($arr1+$arr2);
結論:
使用「+」用於陣列合併時,不論是數字索引還是關聯索引:使用場景:兩個擁有不同鍵值的陣列,希望原有鍵值被保留不同的鍵值元素被合併進乙個陣列,
相同的鍵值元素以前者為準,即不會被後者同鍵的值覆蓋
再來看 array_merge();
<?php結果如下:$arr1=array(3,3476,123,45,45,'a'=>79);
$arr2=array(40,74,435,86,34,3432,'a'=>88);
print_r(array_merge($arr1,$arr2));
結論:
使用「array_merge」用於陣列合併時:使用場景:不需要鍵值進行關聯,只需要陣列中的值原有的數字索引全部會被拋棄 (不論是要合併的第乙個陣列還是第二個),其對應的所有值會放入乙個新陣列,重新索引。
相同的關聯鍵值元素會被後者同鍵的值覆蓋,關聯索引會被保留
要合併的陣列的鍵全部是字串,而且字串鍵都不重複。
在php手冊中看到乙個好玩的地方,給大家看看
例子很明顯,當數字鍵值超出 php_int_max ,php 已經不認為這是數字索引了,而是字串了。
手冊:
php陣列合併
php的陣列在這門語言裡使用得非常多。陣列的一些常見操作像split explode,join implode,排序 sort,asort,ksort,arsort 兩陣列合併 array combine 鍵值翻轉 array flip 當然還有比較複雜的陣列合併。陣列合併至少有4種形式。1.第一種...
PHP陣列 陣列合併
陣列合併函式 array merge或者 array merge 將乙個或多個陣列的單元合併起來,乙個陣列中的值附加在前乙個陣列的後面。返回作為結果的陣列。如果輸入的陣列中有相同的字串鍵名,則該鍵名後面的值將覆蓋前乙個值。然而,如果陣列包含數字鍵名,後面的值將不會覆蓋原來的值,而是附加到後面。如果只...
關於陣列合併,php
array merge 合併兩個陣列,如果陣列的鍵名是字元,而且兩個陣列的鍵名是相同的字元,如 array3 array 性別 男 姓名 不是女人 array4 array 性別 不知道 長相 很帥 哪麼,合併之後,後者將會覆蓋前者,這樣合併之後就變成了 array 性別 不知道 姓名 不是女人 長...