Функция PHP array_udiff_assoc()
Пример
Сравнение имен ключей и значений двух массивов (с использованием встроенных функций для сравнения имен ключей и пользовательских функций для сравнения значений) и возвращение разницы:
<?php function myfunction($a,$b) { if ($a===$b) { return 0; } return ($a>$b)?1:-1; } $a1=array("a"=>"red","b"=>"green","c"=>"blue"); $a2=array("a"=>"red","b"=>"blue","c"=>"green"); $result=array_udiff_assoc($a1,$a2,"myfunction"); print_r($result); ?>
Определение и использование
Функция array_udiff() используется для сравнения имен ключей и значений двух (или более) массивов и возвращает разницу.
Примечание:Эта функция использует内置函数来 сравнивать имена ключей, а также пользовательские функции для сравнения значений.
Эта функция сравнивает имена ключей и значения двух (или более) массивов и возвращает массив разницы, который включает все элементы,存在的数组(array1но не в других параметрических массивах (array2 или array3 и т.д. ключевые и значимые имена.
Объяснение
функция array_udiff_assoc() возвращает array1 Часть, которая существует в одном массиве, но не存在于 других.
注意与 array_diff() и array_udiff() другое, так как также используется имя ключа для сравнения. В то же время сравниваются и имя и значение ключа. Например, элементы "a"=>1 и "b"=>1 являются неравными.
Сравнение данных массива осуществляется с помощью回调 функции, предоставленной пользователем. В этом отношении и array_diff_assoc() является противоположным,后者 использует внутренние функции для сравнения.
Поведение функции array_udiff_assoc() myfunction Функция, указанная параметром, используется для сравнения элементов на равенство.myfunction Функция имеет два параметра для сравнения. Если первый параметр меньше второго параметра, функция возвращает отрицательное число, если параметры равны, то возвращает 0, если первый параметр больше второго, то возвращает положительное число.
Синтаксис
array_udiff_assoc(array1,array2,array3,...myfunction)
Параметры | Описание |
---|---|
array1 | Обязателен. Первый массив для сравнения с другими массивами. |
array2 | Обязателен. Массив для сравнения с первым массивом. |
array3,... | Опционален. Другие массивы для сравнения с первым массивом. |
myfunction |
Обязателен. Строка, определяющая вызываемую функцию. Если первый параметр меньше или равен второму параметру, функция сравнения должна вернуть целое число, меньшее или равное 0. |
Технические детали
Возврат значения: | возврат массива разницы, который включает все элементы в сравниваемых массивах (array1но не в других параметрических массивах (array2 или array3 и т.д. ключевые и значимые имена. |
PHP Версия: | 5+ |