Функция PHP array_intersect_ukey()
Пример
Сравнение имен ключей двух массивов (использование пользовательской функции для сравнения имен ключей) и возвращение пересечения:
<?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"=>"blue","b"=>"black","e"=>"blue"); $result=array_intersect_ukey($a1,$a2,"myfunction"); print_r($result); ?>
Определение и использование
Функция array_intersect_ukey() используется для сравнения имен ключей двух (или более) массивов и возвращает пересечение.
Комментарий:Эта функция использует пользовательскую функцию для сравнения имен ключей!
Эта функция сравнивает имена ключей двух (или более) массивов и возвращает массив пересечения, который включает все элементы, встречающиеся в сравниваемых массивах (array1) и также в любом другом массиве параметров (array2 или array3 и т.д.) ключи.
объяснение
функция array_intersect_ukey() использует обратную функцию для сравнения имен ключей, чтобы вычислить пересечение массивов.
функция array_intersect_ukey() возвращает массив, который содержит все ключи,出现的 array1 значения ключей, которые встречаются в обоих массивах и одновременно出现在 всех других массивах параметров.
Эта сравнение производится с помощью обратной функции, предоставленной пользователем. Эта функция имеет два параметра, то есть имена ключей, которые необходимо сравнить. Если первый параметр меньше второго, функция должна вернуть отрицательное число, если параметры равны, то вернуть 0, если первый параметр больше второго, то вернуть положительное число.
грамматика
array_intersect_ukey(array1,array2,array3,...myfunction)
Параметры | Описание |
---|---|
array1 | Обязательный. Первый массив, сравниваемый с другими массивами. |
array2 | Обязательный. Массив, сравниваемый с первым массивом. |
array3,... | Опциональный. Другие массивы, сравниваемые с первым массивом. |
myfunction | Обязательный. Строка, определяющая функцию сравнения, которую можно вызывать. Если первый параметр меньше, равен или больше второго параметра, функция сравнения должна возвращать целое число, меньшее, равное или большее 0. |
Технические детали
Возврат значений: | Возврат交集 массива, который включает все ключи, сравниваемые в массивах (array1) и также в любом другом массиве параметров (array2 или array3 и т.д.) ключи. |
Версия PHP: | 5.1.0+ |
Более примеров
Пример 1
Сравнение ключей трёх массивов (используя пользовательскую функцию для сравнения ключей) и возврат пересечения:
<?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"=>"black","b"=>"yellow","d"=>"brown"); $a3=array("e"=>"purple","f"=>"white","a"=>"gold"); $result=array_intersect_ukey($a1,$a2,$a3,"myfunction"); print_r($result); ?>