PHP函数从两个数组中获取差异元素

PHP函数从两个数组中获取差异元素,php,arrays,Php,Arrays,情况如下: 我有两个阵列,例如: $a=array('a','b','c','d'); $b=array('1','b','c','e'); 我想生成两个数组,结果如下: $c=array('a','d');//only element appeared on $a $d=array('1','e');//only element appeared on $b 你有聪明的解决办法吗?对不起,我的错。结果是a在我的测试中给出了错误的数组。 $c = array_diff($a, $b); $d

情况如下: 我有两个阵列,例如:

$a=array('a','b','c','d');
$b=array('1','b','c','e');
我想生成两个数组,结果如下:

$c=array('a','d');//only element appeared on $a
$d=array('1','e');//only element appeared on $b

你有聪明的解决办法吗?

对不起,我的错。结果是a在我的测试中给出了错误的数组。
$c = array_diff($a, $b);
$d = array_diff($b, $a);
simple array_diff解决了这个问题:
$c=array_diff($a,$b);
$d=阵列差异($b,$a)

尝试使用array_diff()函数:

array_diff(array1,array2,array3...)
例如:

资料来源:

<?php
$a1=array(0=>"Cat",1=>"Dog",2=>"Horse");
$a2=array(3=>"Horse",4=>"Dog",5=>"Fish");
print_r(array_diff($a1,$a2));
?>
Array ( [0] => Cat )