Compara los valores clave de dos matrices (usando una función definida por el usuario para comparar los valores clave) y devuelve la intersección:
<?php función mifunción ( $a , $b ) { si ( $a === $b ) { devolver 0 ; } devolver ( $a > $ b ) 1 : - 1 ; $a1 = matriz ( " a " => " rojo " , " b " => " verde " , " c " => " azul " ) $a2 = matriz ( " a " => " azul " , " b ") ; = > " negro " , " e " = > " azul " ) ; $ resultado = array_uintersect ( $ a1 , $ a2 , " mifunción " ) ;La función array_uintersect() compara los valores clave de dos (o más) matrices y devuelve la intersección.
Nota: ¡ Esta función utiliza una función definida por el usuario para comparar valores clave!
Esta función compara los valores clave de dos (o más) matrices y devuelve una matriz de intersección que incluye todos los valores en la matriz comparada ( matriz1 ), así como cualquier otra matriz de parámetros ( matriz2 o matriz3, etc.) ) en el valor clave.
array_uintersect( matriz1,matriz2,matriz3...,mifunción )
parámetro | describir |
---|---|
matriz1 | Requerido. La primera matriz a comparar con otras matrices. |
matriz2 | Requerido. La matriz que se va a comparar con la primera matriz. |
matriz3,... | Opcional. Matriz adicional para comparar con la primera matriz. |
mi función | Requerido. Una cadena que define una función de comparación invocable. Si el primer parámetro <, =, > el segundo parámetro, la función de comparación correspondiente debe devolver un número entero <, =, > 0. |
Valor de retorno: | Devuelve una matriz de intersección que contiene todas las claves de la matriz comparada ( matriz1 ) y cualquier otra matriz de parámetros ( matriz2 o matriz3 , etc.). |
---|---|
Versión PHP: | 5+ |
Utilice la función incorporada strcasecmp para ignorar las comparaciones de casos y devolver la intersección:
<?php $matriz1 = matriz ( " a " => " verde " , " b " => " marrón " , " c " => " azul " , " rojo " ) ; $matriz2 = matriz ( " a " => " VERDE "; , " B " = > " marrón " , " amarillo " , " rojo " ) ; print_r ( array_uintersect ( $array1 , $array2 , " strcasecmp " ) ) ;