Función array_uintersect_assoc() de PHP
Ejemplo
Comparar los nombres de clave y los valores de dos arrays (comparar los nombres de clave con la función integrada, y los valores con la función personalizada del usuario), 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"=>"red","b"=>"blue","c"=>"green"); $result=array_uintersect_assoc($a1,$a2,"myfunction"); print_r($result); ?>
Definición y uso
La función array_uintersect_assoc() se utiliza para comparar los nombres de clave y los valores de dos (o más) arrays y devuelve la intersección (coincidencia).
Nota:Esta función utiliza la función integrada para comparar los nombres de clave, y la función personalizada del usuario para comparar los valores!
Esta función compara los nombres de clave y los valores de dos (o más) arrays y devuelve un array de intersección que incluye todos los elementos de los arrays comparados (array1), y también en cualquier otro array de parámetros (array2 o array3 etc.) los nombres de clave y valores.
Nota, con array_uintersect( La diferencia es que también se compara el nombre de clave. Los datos (valores de clave) se comparan con una función de devolución de llamada.
Sintaxis
array_uintersect_assoc(array1,array2,array3,...myfunction)
Parámetros | Descripción |
---|---|
array1 | Obligatorio. La primera matriz para comparar con otras matrices. |
array2 | Obligatorio. La matriz para comparar con la primera matriz. |
array3,... | Opcional. Otras matrices para comparar con la primera matriz. |
myfunction |
Obligatorio. Valor de cadena, define la función de comparación invocable. Si el primer parámetro es menor o igual o mayor que el segundo parámetro, la función de comparación debe devolver un entero menor o igual o mayor que 0. |
Descripción
usar una función de devolución de llamada personalizada function para calcular la intersección de dos o más matrices (es decir, array1 que existen en, y también en cualquier otra matriz, todos los elementos del array (
Se realiza una comparación simultánea de nombres de clave y valores, como los elementos "a"=>1 y "b"=>1 son diferentes.
function La función especificada por el parámetro se utiliza para comparar si los elementos son iguales.function La función tiene dos parámetros para comparar. Si el primer parámetro es menor que el segundo, la función devuelve 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, devuelve un número positivo.
Los nombres de clave del array devuelto se mantienen inmutables.
Detalles técnicos
Valor de retorno: | Devuelve un array que contiene todos los elementos que existen array1 también en todas las otras matrices. |
Versión PHP: | 5+ |