php中array_merge函数

一、介绍

array_merge() 函数是 PHP 中用于合并一个或多个数组的函数。

该函数将一个或多个数组的元素合并成一个数组,并返回新数组。 如果两个数组具有相同的键名,则后一个键名覆盖前一个键名。但如果仅存在数值键名,则不被覆盖。

二、使用方法

array_merge() 函数使用方法如下:

```

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

```

参数说明:

- array1:必需。数组。该参数可以是一个数组或多个数组。

- ...:可选。数组,最多可以输入 255 个数组。

返回值:返回合并后的数组,如果出错了则返回 null。

示例:

```

$arr1 = array("name"=>"Jack", "age"=>18, "sex"=>"male");

$arr2 = array("score"=>99, "age"=>20, "address"=>"Shanghai");

$arr3 = array("name"=>"Lucy", "height"=>170);

$res = array_merge($arr1, $arr2, $arr3);

print_r($res);

```

输出结果:

```

Array

(

[name] => Lucy

[age] => 20

[sex] => male

[score] => 99

[address] => Shanghai

[height] => 170

)

```

三、案例说明

1. 数组合并

在 PHP 中,经常需要合并两个或多个数组的数据,可以使用 array_merge() 函数来实现。

比如,现在有两个数组 $arr1 和 $arr2,它们分别包含了用户注册时填写的基本信息和额外信息,我们需要将它们的信息合并起来:

```

$arr1 = array("name"=>"Jack", "age"=>18, "sex"=>"male", "email"=>"jack@example.com");

$arr2 = array("score"=>99, "address"=>"Shanghai");

$res = array_merge($arr1, $arr2); // 合并数组

print_r($res);

```

输出结果:

```

Array

(

[name] => Jack

[age] => 18

[sex] => male

[email] => jack@example.com

[score] => 99

[address] => Shanghai

)

```

可以看到,$arr1 和 $arr2 的元素被合并成了一个新数组 $res,其中 $arr2 的 "score" 和 "address" 元素被添加到了 $arr1 的元素列表中,这就是 array_merge() 函数的作用。

2. 数组键名冲突

如果两个数组中出现了相同的键名,那么后一个键名会覆盖前一个键名的值,可以看下面的例子:

```

$arr1 = array("name"=>"Jack", "age"=>18, "sex"=>"male");

$arr2 = array("sex"=>"female", "score"=>99, "address"=>"Shanghai");

$res = array_merge($arr1, $arr2); // 合并数组

print_r($res);

```

输出结果:

```

Array

(

[name] => Jack

[age] => 18

[sex] => female

[score] => 99

[address] => Shanghai

)

```

可以看到,$arr1 和 $arr2 中都有 "sex" 这个键名,而其中 $arr2 中的 "sex" 的值为 "female",因此在合并后的数组 $res 中,"sex" 的值被修改为了 "female",这就是数组键名冲突的情况。

3. 操作多个数组

array_merge() 函数支持同时操作多个数组,可以看下面的例子:

```

$arr1 = array("name"=>"Jack", "age"=>18, "sex"=>"male");

$arr2 = array("score"=>99, "address"=>"Shanghai");

$arr3 = array("name"=>"Lucy", "height"=>170);

$res = array_merge($arr1, $arr2, $arr3);

print_r($res);

```

输出结果:

```

Array

(

[name] => Lucy

[age] => 18

[sex] => male

[score] => 99

[address] => Shanghai

[height] => 170

)

```

可以看到,$arr1、$arr2 和 $arr3 同时被合并到了一个数组 $res 中,其中 $arr3 中的 "name" 值覆盖了 $arr1 中的 "name" 值。

四、总结

array_merge() 函数是 PHP 中用于合并数组的函数,它可以将两个或多个数组的元素合并成一个数组,并返回新数组。

需要注意的是,如果两个数组具有相同的键名,则后一个键名覆盖前一个键名;但如果仅存在数值键名,则不被覆盖。

同时,array_merge() 函数也支持同时合并多个数组,可以方便地实现复杂操作。 如果你喜欢我们三七知识分享网站的文章, 欢迎您分享或收藏知识分享网站文章 欢迎您到我们的网站逛逛喔!https://www.37seo.cn/

点赞(90) 打赏

评论列表 共有 1 条评论

只因你是我的恋 1年前 回复TA

之夜,我梦见了自己,在此给自己拜年了……然后一个喷嚏从梦中惊醒,我知道是自己想我了所以鼠上打电话对自己说梦中未说的话…红包拿来!

立即
投稿
发表
评论
返回
顶部