php如何求2个数组相同的元素

发布时间:2022-12-27 09:17:17 作者:iii
来源:亿速云 阅读:231

这篇文章主要介绍“php如何求2个数组相同的元素”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“php如何求2个数组相同的元素”文章能帮助大家解决问题。

php求2个数组相同元素的方法:1、创建一个php示例文件;2、定义两个有相同元素的数组;3、使用“array_intersect($array1,$array2)”或“array_intersect_assoc()”方法获取两个数组相同元素即可。

php获取两个数组相同的元素(交集)以及比较两个数组中不同的元素(差集)

(一)php获取两个数组相同元素

  array  array_intersect(array  $array1, array $array2, [, array $...])    
  array  array_intersect_assoc(array  $array1, array $array2, [, array $...])

  这两个方法的功能基本一致,都是返回两个数组(也可以是多个数组)中都存在的元素,不同的是,前者只考虑数组中元素的 value 一致就认为两者相同,而后者需要 key 和 value 都一致才认为两者相同,例如:

<?php
 
$array1 = array('1', 'a' => 'aaaaaa', 'b' => 'bbbbbb', 'c');
$array2 = array('a' => 'aaaaaa', 'c' => 'bbbbbb', 'c', '1');
 
var_dump(array_intersect($array1,$array2));

运行上面的代码会得到如下结果:

array(4) {
  [0]=>
  string(1) "1"
  ["a"]=>
  string(6) "aaaaaa"
  ["b"]=>
  string(6) "bbbbbb"
  [1]=>
  string(1) "c"
}

而使用方法 array_intersect_assoc()将会得到如下结果:

array(1) {
  ["a"]=>
  string(6) "aaaaaa"
}

(二)php比较两个数组中的不同元素

  array   array_diff(array  $array1, array $array2, [, array $...])
  array   array_diff_assoc(array  $array1, array $array2, [, array $...])

  类似的,这两个方法的基本功能也是一致的,返回第一个数组中有,但是其它数组没有的元素。 前者只比较值,后者同时比较 key 和 value。 

<?php
 
$array1 = array('1', 'a' => 'aaaaaa', 'b' => 'bbbbbb', 'c');
$array2 = array('a' => 'aaaaaa', 'c' => 'bbbbbb', 'c', '1');
 
var_dump(array_diff($array1,$array2));

上面代码的运行结果为:

array(0) {
}

而如果把最后一行更换为  var_dump(array_diff_assoc($array1, $array2));   将得到如下结果:

array(3) {
  [0]=>
  string(1) "1"
  ["b"]=>
  string(6) "bbbbbb"
  [1]=>
  string(1) "c"
}

关于“php如何求2个数组相同的元素”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注亿速云行业资讯频道,小编每天都会为大家更新不同的知识点。

推荐阅读:
  1. php md5和js不一致怎么解决
  2. 怎么解决php define报错问题

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

php

上一篇:php如何删除数组中的null

下一篇:php如何判断数组是否有某个元素

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》