Funzione array_udiff() di PHP

Esempio

Confronta i valori delle chiavi di due array (utilizza una funzione utente definita per confrontare le chiavi) e restituisce la differenza:

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

Esempio di esecuzione

Definizione e uso

La funzione array_udiff() viene utilizzata per confrontare i valori delle chiavi di due (o più) array e restituire la differenza.

Nota:Nota: la funzione utilizza una funzione utente definita per confrontare i valori delle chiavi!

La funzione confronta i valori delle chiavi di due (o più) array e restituisce un array di differenza che include tutti i valori presenti negli array confrontati (array1ma non in nessun altro array di parametri (array2 o array3 e simili) delle chiavi.

Descrizione

La funzione array_udiff() restituisce un array che include tutti i valori presenti negli array di confronto, ma non in nessun altro array di parametri, mantenendo i nomi delle chiavi invariati.

La funzione array_udiff() è diversa da array_diff() Il comportamento della funzione è diverso, l'ultima utilizza una funzione interna per il confronto.

Il confronto dei dati avviene tramite la funzione array_udiff() myfunction effettuato.myfunction La funzione ha due parametri da confrontare. Se il primo parametro è minore del secondo, la funzione restituisce un numero negativo, se i due parametri sono uguali, deve restituire 0, se il primo parametro è maggiore del secondo, viene restituito un numero positivo.

sintassi

array_udiff(array1,array2,array3...myfunction)
Parametri Descrizione
array1 Obbligatorio. Primo array da confrontare con gli altri array.
array2 Obbligatorio. Array da confrontare con il primo array.
array3,... Opzionale. Altri array da confrontare con il primo array.
myfunction

Obbligatorio. Valore di stringa, definisce la funzione chiamabile.

Se il primo parametro è meno o uguale a maggiore del secondo parametro, la funzione di confronto deve restituire un intero tra 0 e maggiore di 0.

Dettagli tecnici

Valore di ritorno: Restituisce un array di differenza che contiene tutte le chiavi presenti negli array comparati (array1ma non in nessun altro array di parametri (array2 o array3 e simili) delle chiavi.
Versione PHP: 5.1.0+

Più esempi

Esempio 1

Confronta i valori delle chiavi di tre array (utilizzando una funzione utente personalizzata per confrontare le chiavi) e restituisci la differenza:

<?php
function myfunction($a,$b)
{
if ($a===$b)
  {
  return 0;
  }
  return ($a>$b)?1:-1;
}
$a1=array("a"=>"red","b"=>"green","c"=>"blue","yellow");
$a2=array("A"=>"red","b"=>"GREEN","yellow","black");
$a3=array("a"=>"green","b"=>"red","yellow","black");
$result=array_udiff($a1,$a2,$a3,"myfunction");
print_r($result);
?>

Esempio di esecuzione