[PHP] (圖解) 陣列合併 陣列相加 差異跟用法 array merge



PHP 陣列合併三種方式圖解

以下是 array_merge()、陣列相加(+)、array_replace() 三種方式在不同的陣列資料的合併結果。

array_merge用法範例1
array_merge 用法範例與差異1


array_merge 用法範例與差異2


array_merge 用法範例與差異3

 

PHP 陣列合併

想要將兩個以上的陣列合併,有多種方式,本文將陸續介紹。

 

PHP array_merge() 函數

把兩個數組合併為一個數組:

<?php
$a1=array("red","green");
$a2=array("blue","yellow");
print_r( array_merge($a1,$a2));
結果
Array ( [0] => red [1] => green [2] => blue [3] => yellow )
 

定義和用法

array_merge() 函數把一個或多個數組合併為一個數組。
提示:您可以向函數輸入一個或者多個數組。

註釋:如果兩個或更多個數組元素有相同的鍵名,則最後的元素會覆蓋其他元素。
註釋:如果您僅向array_merge()函數輸入一個數組,且鍵名是整數,則該函數將返回帶有整數鍵名的新數組,其鍵名以0開始進行重新索引。

提示:該函數與array_merge_recursive()函數之間的不同是在處理兩個或更多個數組元素有相同的鍵名的情況。array_merge_recursive()不會進行鍵名覆蓋,而是將多個相同鍵名的值遞歸組成一個數組。
 

PHP array_replace() 函數

使用第二個數組($a2)的值替換第一個數組($a1)的值:


<?php
$a1=array("red","green");
$a2=array("blue","yellow");
print_r( array_replace($a1,$a2));
結果
Array ( [0] => blue [1] => yellow )

定義和用法

array_replace() 函數使用後面數組的值替換第一個數組的值。
提示:您可以向函數傳遞一個數組,或者多個數組。

如果一個鍵存在於第一個數組array1同時也存在於第二個數組array2,第一個數組array1中的值將被第二個數組array2中的值替換。如果一個鍵僅存在於第一個數組array1,它將保持不變。(詳見下面的實例1)

如果一個鍵存在於第二個數組array2,但是不存在於第一個數組array1,則會在第一個數組array1中創建這個元素。

如果傳遞了多個替換數組,它們將被按順序依次處理,後面數組的值將覆蓋之前數組的值。

提示:請使用 array_replace_recursive() 來遞歸地使用後面數組的值替換第一個數組的值。




參考 PHP 的array merge 保留key 的值

回上一頁

相關文章:

喜歡這篇文章嗎?立即分享

Posted : / Views: 467
Last updated :2017-11-23