array_diff_assoc
Computes the difference of arrays with additional index check
&reftitle.description;
arrayarray_diff_assoc
arrayarray1
arrayarray2
array...
Compares array1 against array2 and
returns the difference. Unlike array_diff the array
keys are also used in the comparison.
&reftitle.parameters;
array1
The array to compare from
array2
An array to compare against
...
More arrays to compare against
&reftitle.returnvalues;
Returns an array containing all the values from
array1 that are not present in any of the other arrays.
&reftitle.examples;
array_diff_assoc example
In this example you see the "a" => "green"
pair is present in both arrays and thus it is not in the output from the
function. Unlike this, the pair 0 => "red"
is in the output because in the second argument "red"
has key which is 1.
"green", "b" => "brown", "c" => "blue", "red");
$array2 = array("a" => "green", "yellow", "red");
$result = array_diff_assoc($array1, $array2);
print_r($result);
?>
]]>
&example.outputs;
brown
[c] => blue
[0] => red
)
]]>
array_diff_assoc example
Two values from key => value pairs are
considered equal only if (string) $elem1 === (string)
$elem2 . In other words a strict check takes place so
the string representations must be the same.
]]>
&example.outputs;
0
[1] => 1
)
]]>
&reftitle.notes;
This function only checks one dimension of a n-dimensional
array. Of course you can check deeper dimensions by using, for example,
array_diff_assoc($array1[0], $array2[0]);.
Ensure you pass arguments in the correct order when comparing similar
arrays with more keys. The new array should be the first in the list.
&reftitle.seealso;
array_diff
array_intersect
array_intersect_assoc