Php 从关联数组中获取不同的值

Php 从关联数组中获取不同的值,php,arrays,Php,Arrays,我有两个关联数组,如下所示: $array1 = array("field1"=>1,"field2"=>1,"field3"=>1,"field4"=>1,"field5"=>1); $array2 = array("field1"=>1,"field2"=>0,"field3"=>1,"field4"=>0,"field5"=>1); 现在我想合并并找到不同的值 我试过: 但它返回以下输出: Array ( [field

我有两个关联数组,如下所示:

$array1 = array("field1"=>1,"field2"=>1,"field3"=>1,"field4"=>1,"field5"=>1);

$array2 = array("field1"=>1,"field2"=>0,"field3"=>1,"field4"=>0,"field5"=>1);
现在我想合并并找到不同的值

我试过:

但它返回以下输出:

Array
(
    [field1] => 1
    [field2] => 1
    [field3] => 1
    [field4] => 1
    [field5] => 1
)
我需要输出为

Array
(
    [field2] => 1
    [field4] => 1
)
如何实现这一点?

试试看

它通过额外的索引检查来计算数组的差异

$array1 = array("field1"=>1,"field2"=>1,"field3"=>1,"field4"=>1,"field5"=>1);

$array2 = array("field1"=>1,"field2"=>0,"field3"=>1,"field4"=>0,"field5"=>1);

$result =  array_diff_assoc($array1,$array2) ;

echo "<pre>";
print_r($result);
$array1=数组(“field1”=>1,“field2”=>1,“field3”=>1,“field4”=>1,“field5”=>1);
$array2=数组(“字段1”=>1,“字段2”=>0,“字段3”=>1,“字段4”=>0,“字段5”=>1);
$result=array_diff_assoc($array1,$array2);
回声“;
打印(结果);
现场演示:

试试看

它通过额外的索引检查来计算数组的差异

$array1 = array("field1"=>1,"field2"=>1,"field3"=>1,"field4"=>1,"field5"=>1);

$array2 = array("field1"=>1,"field2"=>0,"field3"=>1,"field4"=>0,"field5"=>1);

$result =  array_diff_assoc($array1,$array2) ;

echo "<pre>";
print_r($result);
$array1=数组(“field1”=>1,“field2”=>1,“field3”=>1,“field4”=>1,“field5”=>1);
$array2=数组(“字段1”=>1,“字段2”=>0,“字段3”=>1,“字段4”=>0,“字段5”=>1);
$result=array_diff_assoc($array1,$array2);
回声“;
打印(结果);

现场演示:

非常简单。您必须查找数组\u diff\u assoc()函数


希望有帮助

这很简单。您必须查找数组\u diff\u assoc()函数

希望有帮助

 How it Works :- Returns an array containing all the values from array1 that are 
            not present in any of the other arrays (in your case $array2).
$array1 = array("field1"=>1,"field2"=>1,"field3"=>1,"field4"=>1,"field5"=>1);
$array2 = array("field1"=>1,"field2"=>0,"field3"=>1,"field4"=>0,"field5"=>1);
$output =  array_diff_assoc($array1,$array2) ;
var_dump($output);