PHP. Руководство по PHP. 2005
array_diff_uassoc
array_diff_uassoc
(PHP 5)array_diff_uassoc --
Вычислить расхождение в массивах с дополнительной проверкой индекса,
осуществляемой при помощи функции, определённой пользователем
Описание
array array_diff_uassoc (array array1, array array2 [, array..., callback key_compare_func])array_diff_uassoc() возвращает array,
содержащий все значения array1,
не содержащиеся в последующих параметрах.
Обратите внимание, что в отличие от
array_diff(), для сравнения используются ключи.
Для сравнения используется функция, определённая пользователем.
Она должна возвращать целое число меньшее, равное или большее нуля, если
первый параметр, соответственно, меньше, равен или больше второго.
В отличие от array_diff_assoc(), использующей
для сравнения встроенную функцию.
В нашем примере пара "a" => "green"
существует в обоих массивах и поэтому не присутствует в выводе функции.
Наоборот, пара 0 => "red"
присутствует в выводе, потому что во втором аргументе значению "red"
соответствует ключ 1.
Равенство двух индексов проверяется при помощи функции, определённой пользователем.
Замечание:
Обратите внимание, что эта функция обрабатывает только одно измерение
n-размерного массива. Естественно, вы можете обрабатывать и более глубокие
уровни вложенности, например, используя
array_diff_uassoc($array1[0], $array2[0], "key_compare_func");.
См. также
array_diff_key
array_diff_ukey