• 技术文章 >后端开发 >PHP问题

    php怎么对比两个数组是否有相同元素

    青灯夜游青灯夜游2022-06-13 20:41:12原创347

    对比方法:1、利用array_intersect_assoc()函数对比两个数组的键名和键值,语法“array_intersect_assoc($arr1,$arr2)”,会返回一个包含相同元素的交集数组;2、利用“==”运算符判断交集数组是否为空数组,语法“交集数组==[]”,如果交集数组为空数组,则两个数组里没有相同元素,如果交集数组不是空数组,则两个数组里有相同元素。

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

    php对比两个数组是否有相同元素的方法

    步骤1:利用array_intersect_assoc()函数对比数组

    array_intersect_assoc() 函数用于比较两个数组的键名和键值,并返回两个数组的交集(包含相同元素的数组)。

    交集数组中包括了所有在被比较的数组(array1)中,同时也在任何其他参数数组(array2)中的键名和键值。

    <?php
    header('content-type:text/html;charset=utf-8');
    $arr1=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow");
    $arr2=array("a"=>"red","b"=>"green","c"=>"yellow");
    $arr3=array("a"=>"green","b"=>"1","c"=>"yellow");
    var_dump($arr1);
    var_dump($arr2);
    var_dump($arr3);
    $result=array_intersect_assoc($arr1,$arr2);
    echo '两个数组($arr1和$arr2)的交集:';
    var_dump($result);
    $result=array_intersect_assoc($arr1,$arr3);
    echo '两个数组($arr1和$arr3)的交集:';
    var_dump($result);
    ?>

    1.png

    步骤2:利用“==”运算符判断交集数组是否为空数组

    if($result==[]){
    	echo '两个数组中没有相同元素<br>';
    }else{
    	echo '两个数组中有相同元素<br>';
    }

    2.png

    推荐学习:《PHP视频教程

    以上就是php怎么对比两个数组是否有相同元素的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:php php数组
    上一篇:php怎么把秒转为时分秒 下一篇:PHP是否支持MySQL
    20期PHP线上班

    相关文章推荐

    • 【活动】充值PHP中文网VIP即送云服务器• 怎么将多个php数组转成一个json数据• php数组怎么求比80大的数• php数组是基本类型吗• php数组中键是不是唯一标识符• php数组中key可以是字符吗• PHP数组怎么根据指定条件求和
    1/1

    PHP中文网