array_diff_uassoc
Вычислить расхождение в массивах с дополнительной проверкой индекса,
осуществляемой при помощи функции, определённой пользователем
Описание
arrayarray_diff_uassoc
arrayarray1
arrayarray2
array...
callbackkey_compare_func
array_diff_uassoc возвращает array,
содержащий все значения array1,
не содержащиеся в последующих параметрах.
Обратите внимание, что в отличие от
array_diff, для сравнения используются ключи.
Для сравнения используется функция, определённая пользователем.
Она должна возвращать целое число меньшее, равное или большее нуля, если
первый параметр, соответственно, меньше, равен или больше второго.
В отличие от array_diff_assoc, использующей
для сравнения встроенную функцию.
Пример использования array_diff_uassoc
$b)? 1:-1;
}
$array1 = array("a" => "green", "b" => "brown", "c" => "blue", "red");
$array2 = array("a" => "green", "yellow", "red");
$result = array_diff_uassoc($array1, $array2, "key_compare_func");
print_r($result);
?>
]]>
&example.outputs;
brown
[c] => blue
[0] => red
)
]]>
В нашем примере пара "a" => "green"
существует в обоих массивах и поэтому не присутствует в выводе функции.
Наоборот, пара 0 => "red"
присутствует в выводе, потому что во втором аргументе значению "red"
соответствует ключ 1.
Равенство двух индексов проверяется при помощи функции, определённой пользователем.
Обратите внимание, что эта функция обрабатывает только одно измерение
n-размерного массива. Естественно, вы можете обрабатывать и более глубокие
уровни вложенности, например, используя
array_diff_uassoc($array1[0], $array2[0], "key_compare_func");.
См. также
array_diff,
array_diff_assoc,
array_udiff,
array_udiff_assoc,
array_udiff_uassoc,
array_intersect,
array_intersect_assoc,
array_uintersect,
array_uintersect_assoc и
array_uintersect_uassoc.