比较两个数组php的值

时间:2016-01-18 14:32:40

标签: php arrays

我有两个数组:

第一个:

array (size=6)
  0 => string '3' (length=1)
  1 => string '4' (length=1)
  2 => string '5' (length=1)
  3 => string '7' (length=1)
  4 => string '8' (length=1)
  5 => string '9' (length=1)

第二个:

array (size=3)
  0 => string '3' (length=1)
  1 => string '4' (length=1)
  2 => string '9' (length=1)

我需要比较这两个数组,并将匹配值存储在另一个数组matching中。那些不匹配的人应该存储在not_matching

我该如何完成这项工作?是否有可用于此目的的功能?

感谢您的帮助!

2 个答案:

答案 0 :(得分:1)

用于匹配 http://www.w3schools.com/php/showphp.asp?filename=demo_func_array_intersect

$result=array_intersect($array1,$array2);
print_r($result,1);

不匹配 http://www.w3schools.com/php/showphp.asp?filename=demo_func_array_diff

$result=array_diff($a1,$a2);
print_r($result);

自定义代码

$match_array = array();
$un_match_array = array();
foreach( $array1 as $arr )
{
  if( in_array($arr, $array2) )
  {
      $match_array[] = $arr;
  }
  else
  {
     $un_match_array[] = $arr;
  }
}
print_r($match_array,1);
print_r($un_match_array,1);

答案 1 :(得分:1)

获取匹配结果:array_intersect()

http://php.net/manual/fr/function.array-intersect.php

要获得不匹配的结果:array_diff()

http://php.net/manual/fr/function.array-diff.php