当前位置:Gxlcms > PHP教程 > php怎么合并数组去除重复数据

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

时间:2021-07-01 10:21:17 帮助过:13人阅读

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

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

php合并数组去除重复数据

<?php
header("Content-type:text/html;charset=utf-8");
$arr1 = array(
    'id'       => 1234,
    'url'      => 'https://www.php.cn/',
    'language' => 'PHP',
    'article'  => '数组排序函数',
    6          => '345'
);
$arr2 = array(
    'id' => 5678, 6 => 34, 8 => 26, 11 => '345'
);
echo '<pre>';
$arr = array_merge($arr1, $arr2);
echo '将 $arr1 与 $arr2 合并,结果为:'."<br>";
print_r($arr);
$array = array_unique($arr);
echo '去除重复数据'."<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怎么合并数组去除重复数据的详细内容,更多请关注gxlcms其它相关文章!

人气教程排行