欢迎访问宙启技术站
智能推送

array_merge函数的用法指南

发布时间:2023-06-04 18:15:05

array_merge函数是PHP语言中非常常用的一个函数,主要用于将两个或多个数组合并成一个新的数组,并返回合并后的结果。该函数可以处理任意数量的输入参数,参数可以是数组或者是非数组类型的数据。

array_merge函数的语法格式:

array array_merge( array $array1 [, array $array2 [, array $... ]] )

参数说明:

- $array1:必需参数。要合并的 个数组。

- $array2:可选参数。要合并的第二个数组。

- $...:可选参数。要合并的第三个、第四个,以及更多的数组。

返回值:

返回一个合并后的数组,其中包含了所有输入数组中的元素。

下面是一些使用示例:

1. 合并两个数组

$a = array('a', 'b', 'c');

$b = array('d', 'e', 'f');

$c = array_merge($a, $b);

print_r($c);

这个例子中,我们创建两个数组 $a 和 $b,然后调用 array_merge 函数将它们合并成一个新的数组 $c。最终输出结果为:

Array

(

    [0] => a

    [1] => b

    [2] => c

    [3] => d

    [4] => e

    [5] => f

)

可以看到,$c 数组中包含了 $a 和 $b 数组中的所有元素,且元素顺序与原数组一致。

2. 合并多个数组

$a = array('a', 'b', 'c');

$b = array('d', 'e', 'f');

$c = array('g', 'h', 'i');

$d = array_merge($a, $b, $c);

print_r($d);

这个例子中,我们创建了多个数组 $a、$b、$c 和 $d,然后调用 array_merge 函数将它们全部合并成一个新的数组 $d。最终输出结果为:

Array

(

    [0] => a

    [1] => b

    [2] => c

    [3] => d

    [4] => e

    [5] => f

    [6] => g

    [7] => h

    [8] => i

)

可以看到,$d 数组中包含了所有输入数组中的元素,且元素顺序也与原数组一致。

3. 合并关联数组

$a = array('name' => 'John', 'age' => 30);

$b = array('gender' => 'Male', 'email' => 'john@example.com');

$c = array_merge($a, $b);

print_r($c);

这个例子中,我们创建了两个关联数组 $a 和 $b,然后调用 array_merge 函数将它们合并成一个新的数组 $c。最终输出结果为:

Array

(

    [name] => John

    [age] => 30

    [gender] => Male

    [email] => john@example.com

)

可以看到,$c 数组中包含了 $a 和 $b 数组中的所有元素,且关联键名也被保留了下来。

需要注意的是,如果数组中存在相同的键名,后面的键名会覆盖前面的键名。比如:

$a = array('a', 'b', 'c');

$b = array(1 => 'd', 'e', 'f');

$c = array_merge($a, $b);

print_r($c);

输出结果为:

Array

(

    [0] => a

    [1] => d

    [2] => f

)

可以看到,$b 数组中的元素 'e' 被忽略掉了,因为它的键名与前面的 $a 数组中的元素 'b' 重复了。

 array_merge函数的使用总结:

- array_merge() 函数将两个或多个数组合并成一个数组,并返回合并后的结果。

- array_merge() 可以处理任意数量的输入参数,参数可以是数组或者是非数组类型的数据。

- array_merge() 函数会忽略掉输入数组中的键名,然后在结果数组中重新生成连续的数字键。

- 如果数组中存在相同的键名,后面的键名会覆盖前面的键名。

- 如果输入的数组中有相同的字符串键名,那么后面的元素会覆盖前面的元素。

- 如果输入的数组中有相同的数字键名,那么后面的元素会覆盖前面的元素,而不管它们在数组中的位置如何。