array_merge_deep()
函數可以合并多維數組,包括具有不同長度的數組。它的工作原理是將輸入的數組遞歸地合并為一個新數組。在合并過程中,如果遇到數值鍵,它會將這些鍵視為數組索引,并根據數值的大小將值放入新數組的相應位置。如果遇到字符串鍵,它會直接使用該鍵作為新數組的索引。
以下是一個示例,展示了如何使用 array_merge_deep()
合并具有不同長度數組的數組:
$array1 = [
'a' => 1,
'b' => [
2,
3,
'c' => 4,
],
];
$array2 = [
'a' => 5,
'b' => [
6,
7,
'd' => 8,
],
'e' => 9,
];
$mergedArray = array_merge_deep($array1, $array2);
print_r($mergedArray);
輸出結果:
Array
(
[a] => 5
[b] => Array
(
[0] => 2
[1] => 3
[c] => 4
[d] => 8
)
[e] => 9
)
在這個示例中,$array1
和 $array2
具有不同的長度和結構,但 array_merge_deep()
函數成功地合并了它們。