Функция PHP array_uintersect_uassoc

array array_uintersect_uassoc ( array array1, array array2 [, array ..., callback data_compare_func, callback key_compare_func] )

array_uintersect_uassoc() возвращает массив, содержащий все значения параметра array1, содержащиеся во всех последующих аргументах. Обратите внимание, что в отличие от array_uintersect() в сравнении используются и ключи. Для сравнения и ключей, и значений используется функция обратного вызова.

Пример использования array_uintersect_uassoc()

  <?php
   $array1 = array("a" => "green", "b" => "brown", "c" => "blue", "red");
   $array2 = array("a" => "GREEN", "B" => "brown", "yellow", "red");
  
   print_r(array_uintersect_uassoc($array1, $array2, "strcasecmp", "strcasecmp"));
?>

Результат выполнения данного примера:

Array  (  [a] => green  [b] => brown  )

Для сравнения используется функция, определённая пользователем. Она должна возвращать целое число меньшее, равное или большее нуля, если первый параметр, соответственно, должен считаться меньше, равен или больше второго.

См. также array_uintersect(), array_intersect_assoc(), array_intersect_uassoc() и array_uintersect_assoc().