2023php 怎么求2个数组相同的元素

 所属分类:php教程

 浏览:142次-  评论: 0次-  更新时间:2022-12-27
描述:更多教程资料进入php教程获得。 php求2个数组相同元素的方法:1、创建一个php示例文件;2、定义两个有相同元素的数组;3、使用“array_inte...
更多教程资料进入php教程获得。

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

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

php 怎么求2个数组相同的元素?

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视频教程》

以上就是php 怎么求2个数组相同的元素的详细内容,更多请关注zzsucai.com其它相关文章!

 标签: PHP,数组,
积分说明:注册即送10金币,每日签到可获得更多金币,成为VIP会员可免金币下载! 充值积分充值会员更多说明»

讨论这个素材(0)回答他人问题或分享使用心得奖励金币

〒_〒 居然一个评论都没有……

表情  文明上网,理性发言!