首页 >后端开发 >PHP问题 >php怎么合并数组去除重复数据

php怎么合并数组去除重复数据

青灯夜游
青灯夜游原创
2021-07-08 12:52:153596浏览

在php中,可以利用array_merge()和array_unique()函数来合并数组去除重复数据,语法格式“array_unique(array_merge(array1,array2..))”。

php怎么合并数组去除重复数据

本教程操作环境:windows7系统、PHP7.1版,DELL G3电脑

php合并数组去除重复数据

<?php
header("Content-type:text/html;charset=utf-8");
$arr1 = array(
    &#39;id&#39;       => 1234,
    &#39;url&#39;      => &#39;https://www.php.cn/&#39;,
    &#39;language&#39; => &#39;PHP&#39;,
    &#39;article&#39;  => &#39;数组排序函数&#39;,
    6          => &#39;345&#39;
);
$arr2 = array(
    &#39;id&#39; => 5678, 6 => 34, 8 => 26, 11 => &#39;345&#39;
);
echo &#39;<pre class="brush:php;toolbar:false">&#39;;
$arr = array_merge($arr1, $arr2);
echo &#39;将 $arr1 与 $arr2 合并,结果为:&#39;."<br>";
print_r($arr);
$array = array_unique($arr);
echo &#39;去除重复数据&#39;."<br>";
print_r($array);
?>

输出:

将 $arr1 与 $arr2 合并,结果为:
Array
(
    [id] => 5678
    [url] => https://www.php.cn/
    [language] => PHP
    [article] => 数组排序函数
    [0] => 345
    [1] => 34
    [2] => 26
    [3] => 345
)
去除重复数据
Array
(
    [id] => 5678
    [url] => https://www.php.cn/
    [language] => PHP
    [article] => 数组排序函数
    [0] => 345
    [1] => 34
    [2] => 26
)

说明:

1、array_merge() 函数

array_merge() 函数可以将一个或多个数组的单元合并起来,也就是将一个数组中的值附加在前一个数组的后面,并将合并后的数组返回,语法格式如下:

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

参数 $array1、$array2、... 、$arrayn 为若干个要合并的数组。

如果输入的数组中有相同的字符串键名,则该键名后面的值将覆盖前一个值;如果数组包含数字键名,后面的值将不会覆盖前面的值,而是附加到后面;如果函数只有一个数组参数并且该数组是数字索引的,则键名会以连续方式重新建立索引。

2、array_unique()函数

array_unique -- 移除数组中重复的值

语法格式如下:

array array_unique ( array array )

array_unique() 接受 array 作为输入并返回没有重复值的新数组

注意键名保留不变。array_unique() 先将值作为字符串排序,然后对每个值只保留第一个遇到的键名,接着忽略所有后面的键名。这并不意味着在未排序的 array 中同一个值的第一个出现的键名会被保留。

注: 当且仅当 (string) $elem1 === (string) $elem2 时两个单元被认为相同。就是说,当字符串的表达一样时。第一个单元将被保留。

推荐学习:《PHP视频教程

以上是php怎么合并数组去除重复数据的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn