数组函数

PHP array_merge() 函数

主题:PHP 数组参考上一页|下一页

说明

array_merge() 函数将一个或多个数组合并为一个数组。

此函数将一个或多个数组的元素合并在一起,使一个数组的值附加到前一个数组的末尾。 它返回一个包含合并元素的新数组。

下表总结了该函数的技术细节。

返回值: 返回合并后的数组。
变更日志: 自 PHP 5.0 起,该函数只接受数组类型的参数。
版本: PHP 4+

语法

array_merge() 函数的基本语法如下:

array_merge(array1, array2, ...)

下面的例子展示了 array_merge() 函数的作用。

<?php
// 样本数组
$array1 = array("red", "green", "blue");
$array2 = array("apple", "banana");

// 合并两个索引数组
$result = array_merge($array1, $array2);
print_r($result);
?>

同样,您可以合并两个或多个关联数组,如下例所示:

<?php
// 样本数组
$array1 = array("a" => "apple", "b" => "ball", "c" => "cat");
$array2 = array("x" => "xylophone", "y" => "yacht", "z" => "zebra");

//合并两个关联数组
$result = array_merge($array1, $array2);
print_r($result);
?>

也可以合并索引数组和关联数组,如下所示:

<?php
// 样本数组
$array1 = array(4, 6, 12, 18);
$array2 = array("a"=>"apple", "b"=>"ball", "c"=>"cat");

// 合并两个索引数组
$result = array_merge($array1, $array2);
print_r($result);
?>

参数

array_merge() 函数接受以下参数。

参数 说明
array1 可选。 指定要合并的第一个数组。
array2 可选。 指定要合并的第二个数组。
... 可选。 指定更多要合并的数组。

注意: 从 PHP 7.4.0 版开始,array_merge() 函数现在可以在没有任何参数的情况下调用。 之前,至少需要一个参数。


更多示例

这里有更多示例显示 array_merge() 函数的基本工作原理:

如果输入数组具有相同的字符串键,则该键的后一个值将覆盖前一个,如下例所示:

<?php
// 样本数组
$array1 = array("a"=>"red", "b"=>"green", "c"=>"blue");
$array2 = array("a"=>"apple", "m"=>"mango", "o"=>"orange");

// 合并两个关联数组
$result = array_merge($array1, $array2);
print_r($result);
?>

但是,如果数组包含数字键,则后面的值不会覆盖原始值,而是会被追加,如下例所示:

<?php
// 样本数组
$array1 = array(5, 10, 15, 20);
$array2 = array(10, 30, 50, 80);

// 合并两个索引数组
$result = array_merge($array1, $array2);
print_r($result);
?>
Advertisements