array_diff_uassoc
(PHP 5)
array_diff_uassoc — Computa la diferencia entre matrices con un chequeo adicional de índices, el cual es realizado por una llamada de retorno entregada por el usuario
Descripción
Compara matriz1 contra matriz2 y devuelve la diferencia. En contraste con array_diff(), las claves de las matrices son usadas en la comparación.
A diferencia de array_diff_assoc(), una función de llamada de retorno creada por el usuario es usada para la comparación de índices, no una función interna.
Lista de parámetros
- matriz1
-
La matriz a comparar
- matriz2
-
Una matriz contra la que se realiza la comparación
- ...
-
Más matrices a incluir en la comparación
- func_comparacion_claves
-
Función tipo callback a usar. La función de llamada de retorno debe devolver un entero menor, igual o mayor a cero si el primer argumento es considerado respectivamente como menor, igual o mayor que el segundo.
Valores retornados
Devuelve un valor tipo array que contiene todas las entradas de matriz1 que no están presentes en ninguna de las otras matrices.
Ejemplos
Example #1 Ejemplo de array_diff_uassoc()
La pareja "a" => "green" está presente en ambas matrices y por lo tanto no es incluida en la salida de la función. En contraste, la pareja 0 => "red" está en la salida porque en el segundo argumento "red" tiene una clave que es 1.
<?php
function func_comparacion_claves($a, $b)
{
if ($a === $b) {
return 0;
}
return ($a > $b)? 1:-1;
}
$matriz1 = array("a" => "green", "b" => "brown", "c" => "blue", "red");
$matriz2 = array("a" => "green", "yellow", "red");
$resultado = array_diff_uassoc($matriz1, $matriz2, "func_comparacion_claves");
print_r($resultado);
?>
El resultado del ejemplo seria:
Array
(
[b] => brown
[c] => blue
[0] => red
)
La igualdad de 2 índices es chequeada por la función de llamada de retorno entregada por el usuario.
Notes
Note: Esta función sólo analiza una dimensión de una matriz n-dimensional. Por supuesto que puede analizar dimensiones más profundas usando, por ejemplo, array_diff_uassoc($matriz1[0], $matriz2[0], "func_comparacion_claves");.
Ver también
- array_diff() - Comprueba las diferencias entre matrices
- array_diff_assoc() - Comprueba las diferencias entre matrices teniendo en cuenta los índices
- array_udiff() - Computa la diferencia entre matrices, usando una llamada de retorno para la comparación de datos
- array_udiff_assoc() - Computa la diferencia entre matrices con un chequeo de índices adicional, comparando los datos con una llamada de retorno
- array_udiff_uassoc() - Computa la diferencia entre matrices con un chequeo de índices adicional, comparando los datos y los índices con una llamada de retorno
- array_intersect() - Calcula la intersección de matrices
- array_intersect_assoc() - Calcula la intersección de matrices verificando que también coincidan los índices
- array_uintersect() - Calcula la interseccón de matrices, compara los datos con una función del usuario
- array_uintersect_assoc() - Calcula la intersección de matrices con chequeo adicional de ídices, comparando los datos por una función del usuario
- array_uintersect_uassoc() - Calcula la intersección de matrices con chequeo adicional de índices, compara los datos y los índices por una función del usuario
array_diff_uassoc
