PHP array_merge():数组合并

PHP array_merge() 函数用来将多个数组合并为一个,其语法如下:

array array_merge ( array $arr1 [, array $arr2, array $arr3 … ] )

arr1, arr2, arr3 … 表示要合并的数组。

array_merge() 函数会将多个数组的元素合并起来,后面一个数组的元素会附加在前一个数组的后面,最终返回合并后的数组。

如果原来的数组中有相同的字符串键名,那么该键名后面的值将覆盖前面的值;如果原来的数组包含的是数字键名,那么后面的值将不会覆盖前面的值,而是附加到后面。

如果参数中只给了一个数组并且该数组是数字索引的,那么键名会以连续方式重新索引。

该函数的使用示例如下:

<?php
$array1 = array("color" => "red", 2, 4);
$array2 = array("a", "b", "color" => "green", "shape" => "trapezoid", 4);
$result = array_merge($array1, $array2);  //合并数组
print_r($result);
?>

执行以上程序的结果为:

Array
(
    [color] => green
    [0] => 2
    [1] => 4
    [2] => a
    [3] => b
    [shape] => trapezoid
    [4] => 4
)

如果想完全保留原有数组并只想将新的数组附加到后面,就用+运算符。使用连接数组,连接的数组中键名相同时,第一个数组的键值对将会保留,后面的将会被舍弃。示例如下:

<?php
$array1 = array(0 => 'zero_a', 2 => 'two_a', 3 => 'three_a');
$array2 = array(1 => 'one_b', 3 => 'three_b', 4 => 'four_b');
$result = $array1 + $array2;
print_r($result);
?>

执行以上程序的输出结果为:

Array
(
    [0] => zero_a
    [2] => two_a
    [3] => three_a
    [1] => one_b
    [4] => four_b
)

PHP, 学海无涯