实现步骤:1、用array_intersect()比较两个数组并获取相同元素,语法“array_intersect(原数组1,原数组2)”,会返回一个包含相同元素的交集数组;2、用array_diff()分别将两个原数组和交集数组进行对比,删除相同元素,获取不相同的元素,语法“array_diff(原数组1,交集数组)”和“array_diff(原数组2,交集数组)”。
本教程操作环境:windows7系统、PHP8.1版、DELL G3电脑
在php中,可以利用array_intersect()和array_diff()函数来比较两个数组并去除相同的元素
实现步骤:
步骤1:利用array_intersect()函数比较两个数组并获取相同元素
array_intersect()函数可以比较两个数组的值,并返回包含相同元素的交集数组。
array_intersect(array1,array2);
参数 | 描述 |
---|---|
array1 | 必需。与其他数组进行比较的第一个数组。 |
array2 | 必需。与第一个数组进行比较的数组。 |
返回值:返回交集数组,该数组包括了所有在被比较的数组(array1)中,同时也在任何其他参数数组(array2 )中的键值。
<?php header('content-type:text/html;charset=utf-8'); $arr1=array(1,2,3,4,5,6); $arr2=array(2,4,6,8,10,12); var_dump($arr1); var_dump($arr2); $intersect=array_intersect($arr1,$arr2); echo "相同元素有:"; var_dump($intersect); ?>
步骤2:利用array_diff()函数删除两个数组的相同元素
使用array_diff()函数分别将两个数组和交集数组进行对比,获取差集(删除相同元素,获取不同元素)。
array_diff() 函数用于比较两个(或更多个)数组的值,并返回差集。
array_diff(array1,array2,);
参数 | 描述 |
---|---|
array1 | 必需。与其他数组进行比较的第一个数组。 |
array2 | 必需。与第一个数组进行比较的数组。 |
array3,... | 可选。与第一个数组进行比较的其他数组。 |
array_diff() 函数比较两个(或更多个)数组的值(key=>value 中的 value),并返回一个差集数组,该数组包括了所有在被比较的数组(array1)中,但是不在任何其他参数数组(array2 )中的值。
<?php header('content-type:text/html;charset=utf-8'); $arr1=array(1,2,3,4,5,6); $arr2=array(2,4,6,8,10,12); var_dump($arr1); var_dump($arr2); $intersect=array_intersect($arr1,$arr2); echo "相同元素有:"; var_dump($intersect); $diff1=array_diff($arr1,$intersect); $diff2=array_diff($arr2,$intersect); echo "删除相同元素后的两数组:"; var_dump($diff1); var_dump($diff2); ?>
推荐学习:《PHP视频教程》
以上是php怎么比较两个数组去除相同的元素的详细内容。更多信息请关注PHP中文网其他相关文章!