欢迎来到全国社交动力网络科技有限公司
建站资讯

当前位置: 首页 > 建站资讯 > 建站教程 > PHP教程

php合并2个数组操作_php数组连接方法详解指南【解析】

作者:SEO优化 来源:php入门基础教程日期:2025-12-18
PHP提供五种数组合并方法:一、array_merge()重索引数值键、覆盖同名关联键;二、+运算符保留首数组键、不覆盖不重排;三、array_merge_recursive()递归合并同名键值;四、splat运算符(...)展开拼接数值数组;五、array_replace()选择性替换存在键值。

php合并2个数组操作_php数组连接方法详解指南【解析】

如果您需要将两个 PHP 数组合并为一个数组,PHP 提供了多种原生函数和操作方式来实现这一目标。以下是几种常用且互不相同的数组合并方法:

一、使用 array_merge() 函数

array_merge() 是最常用的数组合并函数,它会将一个或多个数组的键值对合并到一个新的数组中。对于数值索引数组,它会重新索引;对于关联数组,相同键名的值会被后一个数组的值覆盖。

1、定义第一个数组:$arr1 = ['a', 'b'];

2、定义第二个数组:$arr2 = ['c', 'd'];

立即学习“PHP免费学习笔记(深入)”;

3、调用函数合并:$result = array_merge($arr1, $arr2);

4、输出结果:print_r($result); 输出为 Array ( [0] => a [1] => b [2] => c [3] => d )

二、使用加号(+)运算符

加号运算符用于合并关联数组,它会保留第一个数组的键值对,仅将第二个数组中**不存在于第一个数组中的键**添加进来,不会覆盖已有键,也不会重排数字索引。

1、定义第一个关联数组:$arr1 = ['name' => 'Alice', 'age' => 25];

2、定义第二个关联数组:$arr2 = ['city' => 'Beijing', 'age' => 30];

3、使用加号合并:$result = $arr1 + $arr2;

4、输出结果:print_r($result); 输出中 age 值仍为 25,city 被成功追加

三、使用 array_merge_recursive() 函数

该函数在遇到相同键名时,不会覆盖值,而是将值递归地合并为数组。适用于需保留所有同名键对应数据的场景,尤其适合多维数组合并。

1、定义第一个数组:$arr1 = ['user' => ['id' => 1]];

2、定义第二个数组:$arr2 = ['user' => ['name' => 'Bob']];

3、调用递归合并:$result = array_merge_recursive($arr1, $arr2);

4、输出结果:print_r($result); user 键下变为 ['id' => 1, 'name' => 'Bob'] 的一维数组

四、使用 splat 运算符(...)展开合并(PHP 5.6+)

splat 运算符可将数组直接展开为参数列表,适用于数值索引数组的拼接,语法简洁,不支持关联键自动处理,需确保数组为纯数值索引。

1、定义两个数值索引数组:$arr1 = [1, 2]; $arr2 = [3, 4];

2、使用 splat 合并:$result = [...$arr1, ...$arr2];

3、验证类型:var_dump($result); 输出为 array(4) { [0]=> int(1) [1]=> int(2) [2]=> int(3) [3]=> int(4) }

五、使用 array_replace() 函数

array_replace() 用后续数组的值替换第一个数组中相同键的值,仅替换存在键,不添加新键,也不影响未匹配键,适用于有选择性覆盖需求的合并。

1、定义基础数组:$base = ['a' => 1, 'b' => 2, 'c' => 3];

2、定义替换数组:$replacements = ['b' => 20, 'd' => 40];

3、执行替换合并:$result = array_replace($base, $replacements);

4、输出结果:print_r($result); a 和 c 保持不变,b 被更新为 20,d 被添加,c 不被移除

以上就是php合并2个数组操作_php数组连接方法详解指南【解析】的详细内容,更多请关注php中文网其它相关文章!

标签: 学php需要多久
上一篇: php怎么把数组按从小到大排_PHP对数组进行升序排序的方法
下一篇: PHP循环语句深度讲解_PHP中for与while循环实例解析

推荐建站资讯

更多>