作者:淘宝秀2010_958 | 来源:互联网 | 2024-12-11 21:49
数组合并方法
- 使用
array_merge()
函数:
- 对于数字索引的数组,新数组的元素将被追加到原数组后面,并且键名会被重新索引。
- 对于字符串索引的数组,如果存在相同的键名,则后一个数组中的值将覆盖前一个数组中的值。
- 使用加号(+)操作符:
- 对于数字索引的数组,后面的数组不会覆盖前面数组的值,而是保持原样。
- 对于字符串索引的数组,处理方式与
array_merge()
相同,即后一个数组的值会覆盖前一个数组中的值。
合并数组并去重
在PHP中,可以通过以下几种方式实现数组的合并与去重:
// 单个数组去重
array_unique($arrTest);
// 多个数组去重
array_keys(array_flip($arr1) + array_flip($arr2));
功能测试示例
下面是一些具体的代码示例,用于演示上述方法的实际应用:
$arr1 = [1, 2, 3, 4, 5];
$arr2 = [1, 2, 3, 6, 7];
$arr3 = ['0' => 1, '1' => 2, '2' => 3, '3' => 4, '4' => 5];
$arr4 = ['0' => 1, '1' => 2, '2' => 3, '3' => 6, '4' => 7];
$arr5 = ['0' => 1, 'a' => 2, 'b' => 3, 'c' => 4, '4' => 5];
$arr6 = ['0' => 1, 'a' => 2, 'c' => 3, 'd' => 6, '4' => 7];
echo '普通数组测试----------------';
var_dump(array_merge($arr1, $arr2));
var_dump($arr1 + $arr2);
var_dump(array_keys(array_flip($arr1) + array_flip($arr2)));
echo '普通数组测试结束-----------------
';
echo '数字索引的关联数组测试-----------';
var_dump(array_merge($arr3, $arr4));
var_dump($arr3 + $arr4);
var_dump(array_keys(array_flip($arr3) + array_flip($arr4)));
echo '数字索引的关联数组测试结束-------------
';
echo '混合索引的关联数组测试-----------';
var_dump(array_merge($arr5, $arr6));
var_dump($arr5 + $arr6);
echo '混合索引的关联数组测试结束-------------
';
更多详情可参考:CSDN博客文章