論php陣列合併

2022-03-15 22:57:22 字數 2064 閱讀 8448

注:盡量不要在迴圈中運算元據庫。

array_merge():乙個神奇的方法

1.兩個一維陣列合併成乙個一維陣列

$a = array('morning','afternoon','night');

$b = array('breakfast','lunch','dinner');

(1)以$a中的陣列元素為鍵名,以$b中的陣列元素為鍵值而形成的乙個新陣列。

(2)將$a中與$b中鍵值相同的陣列元素剔除,僅保留$a中不同的陣列元素。也就是說返回差集。

$c=array_diff($a,$b);

(3)將$a中與$b中鍵名和鍵值同時相同的陣列元素剔除,僅保留$a中不同的陣列元素,也就是說返回差集陣列。        

$a = array('morning','afternoon','night');

$b = array('breakfast','lunch','night');

$c=array_diff_assoc($a,$b);

print_r($c);

輸出結果為:

(4)將$a中與$b中鍵名相同的陣列元素剔除,僅保留$a中不同的陣列元素,也就是說返回差集陣列。

$c=array_diff_key($a,$b);

空陣列。

(5)將$a中與$b中鍵名和鍵值同時相同的陣列元素剔除,僅保留$a中不同的陣列元素,也就是說返回差集陣列,然後使用使用者自定義函式比較此差集陣列中的鍵名,對陣列重新排序。

(6)將$a中與$b中鍵名相同的陣列元素剔除,僅保留$a中不同的陣列元素,也就是說返回差集陣列,然後使用使用者自定義函式比較此差集陣列中的鍵名,對陣列重新排序。

$a = array('morning','afternoon','night','today','yesterday','tomorrow');

$b = array('breakfast','lunch','night');

$c=array_diff_ukey($a,$b,function($a,$b));

print_r($c);

(7)將$a中與$b中鍵值相同的陣列元素返回,鍵名為$a中對應的陣列鍵名。(或者是更多陣列,返回的是共有的交集)

$a = array('morning','afternoon','today','night','yesterday','tomorrow');

$b = array('breakfast','lunch','night');

$c = array_intersect($a,$b);

print_r($c);

(8)將乙個或多個陣列合併為乙個陣列。

1.如果兩個或多個陣列元素有相同的鍵名,則最後的元素會覆蓋其他元素。如果輸入的陣列鍵名是整數,則該函式將返回帶有整數鍵名的新陣列,其鍵名以0開始進行重新索引。

$a = array('sun'=>'陽光','moon'=>'月光');

$b = array('dog'=>'狗狗','cat'=>'小貓');

$c = array_merge($a,$b);

print_r($c);

$a = array('sun'=>'陽光','moon'=>'月光','守望'=>'麥田');

$b = array('dog'=>'狗狗','cat'=>'小貓','守望'=>'先鋒');

$c = array_merge($a,$b);

print_r($c);

2.array_merge_recursive() 不會進行鍵名覆蓋,而是將多個相同鍵名的值遞迴組成乙個陣列。

$a = array('sun'=>'陽光','moon'=>'月光','守望'=>'麥田');

$b = array('dog'=>'狗狗','cat'=>'小貓','守望'=>'先鋒');

$c = array_merge_recursive($a,$b);

print_r($c);

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 性別 不知道 姓名 不是女人 長...