(PHP 4 >= 4.3.0, PHP 5, PHP 7)
array_intersect_assoc — Computes the intersection of arrays with additional index check
$array1
, array $array2
[, array $...
] ) : array
array_intersect_assoc() returns an array
containing all the values of array1
that are present in all the arguments. Note that the keys are also used in
the comparison unlike in array_intersect().
array1The array with master values to check.
array2An array to compare values against.
...A variable list of arrays to compare.
Returns an associative array containing all the values in
array1 that are present in all of the arguments.
Example #1 array_intersect_assoc() example
<?php
$array1 = array("a" => "green", "b" => "brown", "c" => "blue", "red");
$array2 = array("a" => "green", "b" => "yellow", "blue", "red");
$result_array = array_intersect_assoc($array1, $array2);
print_r($result_array);
?>
Exemplul de mai sus va afișa:
Array
(
[a] => green
)
In our example you see that only the pair "a" => "green" is present in both arrays and thus is returned. The value "red" is not returned because in $array1 its key is 0 while the key of "red" in $array2 is 1, and the key "b" is not returned because its values are different in each array.
The two values from the key => value pairs are considered equal only if (string) $elem1 === (string) $elem2 . In other words a strict type check is executed so the string representation must be the same.