php合并数组array_merge函数运算符加号与的区别

PHP 中有两种合并数组的方式,分别是使用 array_merge 函数和数组运算符 +(加号)。

PHP 中有两种合并数组的方式,分别是使用 array_merge 函数和数组运算符 +(加号)。

array_merge 函数

array_merge 函数会将多个数组合并成一个数组,返回的新数组中,所有的输入的数组的值都会保留,并以它们的原始键作为新数组的键。如果有相同的键,则后面的值会覆盖前面的值。

$firstArray = ['a', 'b', 'c'];
$secondArray = ['d', 'e', 'f'];
$mergedArray = array_merge($firstArray, $secondArray);

print_r($mergedArray);

执行上述代码后,输出结果为:

Array
(
    [0] => a
    [1] => b
    [2] => c
    [3] => d
    [4] => e
    [5] => f
)

可以看到,使用 array_merge 函数后,$firstArray 和 $secondArray 按顺序合并成了一个新的数组 $mergedArray,在 $mergedArray 中相同键的值会被后面的值覆盖。

也可以将多个数组一起传递给 array_merge 函数:

$firstArray = ['a', 'b', 'c'];
$secondArray = ['d', 'e', 'f'];
$thirdArray = ['g', 'h', 'i'];
$mergedArray = array_merge($firstArray, $secondArray, $thirdArray);

print_r($mergedArray);

执行上述代码后,输出结果为:

Array
(
    [0] => a
    [1] => b
    [2] => c
    [3] => d
    [4] => e
    [5] => f
    [6] => g
    [7] => h
    [8] => i
)

数组运算符 +

数组运算符 + 可以用于将两个或多个数组合并成一个数组。如果有相同的键,+ 运算符会保留左侧数组中的值而忽略右侧数组中的值。

$firstArray = ['a' => 'apple', 'b' => 'banana'];
$secondArray = ['b' => 'berry', 'c' => 'cherry'];
$mergedArray = $firstArray + $secondArray;

print_r($mergedArray);

执行上述代码后,输出结果为:

Array
(
    [a] => apple
    [b] => banana
    [c] => cherry
)

在这个例子中,$firstArray 和 $secondArray 都含有键 b,但是 $firstArray 的值为 'banana',$secondArray 的值为 'berry',因此使用 + 运算符时,保留了 $firstArray 中的值。

如果在 + 运算符中传递多个数组,则只合并第一个数组中唯一的键,因为后面所有的数组都会被忽略。

$firstArray = ['a' => 'apple', 'b' => 'banana'];
$secondArray = ['b' => 'berry', 'c' => 'cherry'];
$thirdArray = ['d' => 'date', 'e' => 'elderberry'];
$mergedArray = $firstArray + $secondArray + $thirdArray;

print_r($mergedArray);

执行上述代码后,输出结果为:

Array
(
    [a] => apple
    [b] => banana
    [c] => cherry
    [d] => date
    [e] => elderberry
)

在这个例子中,只有第一个数组 $firstArray 中的键 a 和 b 是唯一的,因此只有这两个键在 $mergedArray 中被合并,其他数组中的键和值都被忽略。

本文标题为:php合并数组array_merge函数运算符加号与的区别

基础教程推荐