温馨提示×

php array_merge_deep能处理不同类型数据吗

PHP
小樊
81
2024-10-13 21:02:37
栏目: 编程语言

是的,array_merge_deep() 函数可以处理不同类型的数据。这个函数会递归地合并数组的元素,包括嵌套数组。当合并不同类型的数据时,它会尝试将它们转换为相同的类型,然后进行合并。

例如:

$array1 = [
    'a' => 1,
    'b' => 'string',
    'c' => [
        'd' => 2,
        'e' => 'another string',
    ],
];

$array2 = [
    'a' => 3,
    'b' => 'yet another string',
    'c' => [
        'd' => 4,
        'f' => 5,
    ],
];

$mergedArray = array_merge_deep($array1, $array2);

print_r($mergedArray);

输出结果:

Array
(
    [a] => 3
    [b] => yet another string
    [c] => Array
        (
            [d] => 4
            [e] => another string
            [f] => 5
        )
)

在这个例子中,$array1$array2 的元素被递归地合并。数字和字符串值被保留在它们原来的类型中,而嵌套数组则进行了合并。

0