網頁

2013年5月7日

[php] 如何將陣列合併

陣列在合併時,必須針對鍵值是否需要保留,選擇合適的處理方法。


範例:
<?php
$a = array(1=>"apple", 2=>"blue_a");
$b = array(2=>"blue_b", 3=>"computer");

//方式一
$result = array_merge($a, $b);
print_r($result);

//方式二
$result = $a + $b;
print_r($result);
?>

輸出結果:
//方式一
Array
(
[0] => apple
[1] => blue_a
[2] => blue_b
[3] => computer
)

//方式二
Array
(
[1] => apple
[2] => blue_a
[3] => computer
)


  • 當鍵(key)是數字型態時,在使用方式一合併時,會直接合併兩個陣列並重新賦予新鍵(key),而且陣列的資料數量不變;反之使用方式二合併時,鍵(key)相同時,會由第一組陣列鍵(key)值(value)覆蓋第二組陣列,陣列的資料數量因鍵(key)重覆而減少。
  • 鍵(key)是字串型態時,兩種方式的合併結果都相同。