要合并php多维数组的值,可以使用递归函数来实现。以下是一个示例代码:
<?php
function mergeArrays($arrays) {
$result = array();
foreach ($arrays as $array) {
foreach ($array as $key => $value) {
if (is_array($value)) {
$result[$key] = isset($result[$key]) && is_array($result[$key]) ? mergeArrays(array($result[$key], $value)) : $value;
} else {
$result[$key] = isset($result[$key]) ? array_merge((array) $result[$key], (array) $value) : $value;
}
}
}
return $result;
}
$array1 = array(
'a' => array(
'b' => 'value1',
'c' => 'value2'
),
'd' => array(
'e' => 'value3'
)
);
$array2 = array(
'a' => array(
'b' => 'value4'
),
'f' => 'value5'
);
$mergedArray = mergeArrays(array($array1, $array2));
print_r($mergedArray);
?>
输出结果:
Array
(
[a] => Array
(
[b] => value4
[c] => value2
)
[d] => Array
(
[e] => value3
)
[f] => value5
)
在上面的示例中,我们定义了一个`mergeArrays`函数来合并多维数组的值。该函数遍历每个数组,并将其值合并到最终结果数组`$result`中。如果值本身是一个数组,则递归调用`mergeArrays`函数来合并其值。如果值是一个标量值,则使用`array_merge`函数将其合并到结果数组中。
这样,我们可以将多个多维数组的值合并到一起,并得到一个新的多维数组。
正文完