array_intersect_assoc

Computes the intersection of arrays with additional index check

Description

array array_intersect_assoc(array $array, array ...$arrays)

array_intersect_assoc returns an array containing all the values of array that are present in all the arguments. Note that the keys are also used in the comparison unlike in array_intersect.

Parameters

array

The array with master values to check.

arrays

Arrays to compare values against.

Return Values

Returns an associative array containing all the values in array that are present in all of the arguments.

Changelog

Version Description
8.0.0 This function can now be called with only one parameter. Formerly, at least two parameters have been required.

Examples

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);
?>

The above example will output:

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.

See Also

  • array_intersect
  • array_uintersect_assoc
  • array_intersect_uassoc
  • array_uintersect_uassoc
  • array_diff
  • array_diff_assoc