Función array_udiff_assoc() de PHP

Ejemplo

Comparar los nombres y valores de las claves de dos arrays (usar funciones integradas para comparar los nombres de las claves, y funciones personalizadas para comparar los valores de las claves), y devolver la diferencia:

<?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_udiff_assoc($a1, $a2, "myfunction");
print_r($result);
?>

Ejemplo de ejecución

Definición y uso

La función array_udiff() se utiliza para comparar los nombres y valores de las claves de dos (o más) arrays y devuelve la diferencia.

Notas:Esta función utiliza funciones integradas para comparar los nombres de las claves, y funciones personalizadas para comparar los valores de las claves.

Esta función compara los nombres y valores de las claves de dos (o más) arrays y devuelve un array de diferencia que incluye todos los elementos en los arrays comparados (array1pero no está en cualquier otro array de parámetros (array2 o array3 etc.) de los nombres y valores de las claves.

Descripción

La función array_udiff_assoc() devuelve array1 Parte que existe en el array pero no en otros arrays.

注意与 array_diff() array_diff() y array_udiff()

diferente es que también se utiliza el nombre de la clave para la comparación. Se realiza una comparación tanto de nombres como de valores de las claves. Por ejemplo, los elementos "a"=>1 y "b"=>1 son diferentes. La comparación de datos de arrays se realiza mediante una función de devolución de llamada proporcionada por el usuario. En este aspecto y array_diff_assoc()

El comportamiento de la función array_udiff_assoc() es exactamente lo contrario, que es comparado con la función interna. myfunction La función especificada por el parámetro se utiliza para comparar si los elementos son iguales.myfunction La función tiene dos parámetros que se compararán. Si el primer parámetro es menor que el segundo parámetro, la función devuelve un número negativo, si los dos parámetros son iguales, se debe devolver 0, y si el primer parámetro es mayor que el segundo, se devuelve un número positivo.

Sintaxis

array_udiff_assoc(array1,array2,array3,...myfunction)
Parámetros Descripción
array1 Obligatorio. Primer array para comparar con otros arrays.
array2 Obligatorio. Array para comparar con el primer array.
array3,... Opcional. Otros arrays para comparar con el primer array.
myfunction

Obligatorio. Valor de cadena, define la función de comparación invocable.

Si el primer parámetro es menor o igual que el segundo parámetro, la función de comparación debe devolver un entero menor o igual que 0.

Detalles técnicos

Valor devuelto: devuelve el array de diferencia, que incluye todos los elementos de los arrays comparados (array1pero no está en cualquier otro array de parámetros (array2 o array3 etc.) de los nombres y valores de las claves.
Versión de PHP: 5+