Función array_intersect_ukey() de PHP
Ejemplo
Comparar los nombres de clave de dos arrays (usar una función personalizada para comparar nombres de clave) y devolver la intersección:
<?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); ?>
Definición y uso
La función array_intersect_ukey() se utiliza para comparar los nombres de clave de dos (o más) arrays y devuelve la intersección.
Notas:¡Esta función utiliza una función personalizada proporcionada por el usuario para comparar nombres de clave!
Esta función compara los nombres de clave de dos (o más) arrays y devuelve un array de intersección que incluye todas las claves en los arrays comparados (array1) también en cualquier otro array de parámetros (array2 o array3 etc.) los nombres de clave.
Descripción
La función array_intersect_ukey() utiliza una función de devolución de llamada para comparar nombres de clave para calcular la intersección de los arrays.
array_intersect_ukey() devuelve un array que contiene todas las claves que aparecen array1 los valores de las claves que están en ambas matrices y también aparecen en todas las otras matrices de parámetros.
Esta comparación se realiza a través de una función de devolución de llamada proporcionada por el usuario. Esta función tiene dos parámetros, que son los nombres de clave a comparar. Si el primer parámetro es menor que el segundo, la función debe devolver un número negativo, si los dos parámetros son iguales, debe devolver 0, y si el primer parámetro es mayor que el segundo, debe devolver un número positivo.
sintaxis
array_intersect_ukey(array1,array2,array3...myfunction)
Parámetros | Descripción |
---|---|
array1 | Requerido. Primer array para comparar con otros arrays. |
array2 | Requerido. Array para comparar con el primer array. |
array3,... | Opcional. Otros arrays para comparar con el primer array. |
myfunction | Requerido. Define la cadena de caracteres de la función de comparación que se puede llamar. Si el primer parámetro es menor, igual o mayor que el segundo parámetro, la función de comparación debe devolver un entero mayor, igual o menor que 0. |
Detalles técnicos
Valor devuelto: | Devuelve un array de intersección que incluye todas las matrices comparadas (array1) también en cualquier otro array de parámetros (array2 o array3 etc.) los nombres de clave. |
Versión PHP: | 5.1.0+ |
Más ejemplos
Ejemplo 1
Comparar los nombres de clave de tres matrices (usar la función de comparación personalizada del usuario para los nombres de clave) y devolver la intersección:
<?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); ?>