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()
函数成功地合并了它们。