首页 >后端开发 >PHP问题 >php怎么进行数组对比,获取不一样的元素

php怎么进行数组对比,获取不一样的元素

青灯夜游
青灯夜游原创
2021-09-06 11:45:213369浏览

方法:1、使用array_diff()根据数组键值进行对比,语法“array_diff(数组1,数组2)”;2、用array_diff_assoc()根据数组“键/值对”进行对比,语法“array_diff_assoc(数组1,数组2)”。

php怎么进行数组对比,获取不一样的元素

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

方法1:使用array_diff()函数--比较数组的键值

array_diff($arr1,$arr2...)函数只比较数组的键值,会返回一个差集数组,差集数组中的元素是存在于被比较的数组$arr1中,但不存在于其他参数数组$arr2...中的。

示例:

<?php
header("Content-type:text/html;charset=utf-8");
$arr1=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow");
$arr2=array("a"=>"orange","b"=>"green","e"=>"red","r"=>"yellow");
var_dump($arr1);
var_dump($arr2);
$result=array_diff($arr1,$arr2);
echo "两个数组中,不同的元素为:";
var_dump($result);
?>

输出结果:

1.png

方法2:使用array_diff_assoc()函数--比较数组的键名和键值

array_diff_assoc($arr1,$arr2...)函数会将数组的键名和键值都进行比较,同样返回一个差集数组,差集元素和array_diff()、一样会从被比较的数组$arr1中获取。

<?php
header("Content-type:text/html;charset=utf-8");
$arr1=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow");
$arr2=array("a"=>"orange","b"=>"green","e"=>"red","r"=>"yellow");
var_dump($arr1);
var_dump($arr2);

$result=array_diff_assoc($arr1,$arr2);
echo "两个数组中,不同的元素为:";
var_dump($result);
?>

输出结果:

2.png

推荐学习:《PHP视频教程

以上是php怎么进行数组对比,获取不一样的元素的详细内容。更多信息请关注PHP中文网其他相关文章!

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