函式名稱:array_merge_recursive()
函式描述:array_merge_recursive() 函式使用遞迴地合併一個或多個陣列。與array_merge()函式不同的是,當兩個陣列的鍵名相同時,array_merge_recursive() 函式會遞迴地將元素合併在一起,而不是簡單地覆蓋它們。
用法:
array_merge_recursive ( array $array1 , array $array2 [, array $... ] ) : array
引數:
- $array1: 必需,要合併的第一個陣列。
- $array2: 必需,要合併的第二個陣列。
- $...: 可選,要合併的更多陣列。
返回值: 該函式返回一個合併後的陣列。
示例:
$array1 = array('color' => array('favorite' => 'red'), 5);
$array2 = array(10, 'color' => array('favorite' => 'green', 'blue'));
$result = array_merge_recursive($array1, $array2);
print_r($result);
輸出結果:
Array
(
[color] => Array
(
[favorite] => Array
(
[0] => red
[1] => green
)
[0] => blue
)
[0] => 5
[1] => 10
)
以上示例中,兩個陣列都包含一個相同的鍵名 "color",array_merge_recursive() 函式遞迴地合併了這些鍵,將它們的值作為一個新的陣列元素返回。同時,其他鍵名 "5" 和 "10" 也被合併到結果陣列中。
注意:如果兩個陣列具有相同的字串鍵,則遞迴會發生在這些鍵所對應的值上。如果兩個陣列具有相同的鍵名且鍵名為數字,則第一個陣列中的值將被替換,而第二個陣列中的值將被追加到結果陣列的末尾。