Funzione PHP array_diff_assoc ()
Definizione e utilizzo
Il array_diff_assoc() la funzione confronta due array (o più) array e restituisce la differenza.
Questa funzione confronta le chiavi e i valori di due (o più) array e restituisce un array che contiene le voci di array1 ma che non sono presenti in array2 o array3, ecc.
Questa funzione è diversa da array_diff() funzione perché array_diff () usa solo valori da confrontare con altri array dove as array_diff_assoc() la funzione utilizza chiavi e valori durante il confronto con altri array.
Sintassi
array array_diff_assoc( array $array1, array $array2 [, array $array3...] );
Parametri
Suor n | Parametro e descrizione |
---|---|
1 |
array1 (Required) È un array da cui confrontare |
2 |
array2 (Required) È un array da confrontare con il primo array |
3 |
array3 (Optional) È un array da confrontare con il primo array |
Valori restituiti
La funzione array_diff_assoc () restituisce un array contenente tutti i valori di array1 che non sono presenti in nessuno degli altri array con le stesse chiavi.
Versione PHP
Questa funzione è stata introdotta per la prima volta nella versione PHP 4.3.0.
Esempio
Prova il seguente esempio. Qui "a" => "orange" e "c" => "banana" sono presenti in entrambi gli array, quindi non è disponibile nel risultato -
<?php
$input1 = array( "a"=>"orange", "b"=>"mango", "c"=>"banana");
$input2 = array( "a"=>"orange", "b"=>"apple", "c"=>"banana");
print_r(array_diff_assoc($input1, $input2));
?>
Questo produrrà il seguente risultato:
Array
(
[b] => mango
)
Esempio
Qui entrambi gli array hanno chiavi diverse e valori corrispondenti per tutte le coppie, ad esempio "a" => "orange" non è presente nel secondo array, analogamente altre coppie di valori chiave non sono presenti nel secondo array quindi saranno disponibili nel risultato -
<?php
$input1 = array( "a"=>"orange", "b"=>"mango", "c"=>"banana");
$input2 = array( "a"=>"banana", "b"=>"apple", "c"=>"orange");
print_r(array_diff_assoc($input1, $input2));
?>
Questo produrrà il seguente risultato:
Array
(
[a] => orange
[b] => mango
[c] => banana
)
Esempio
Questo esempio chiarisce che due valori delle coppie chiave => valore sono considerati uguali solo se (stringa) $ elem1 === (stringa) $ elem2. -
<?php
$input1 = array(0, 5, 20);
$input2 = array("00", "05", "20");
$result = array_diff_assoc($input1, $input2);
print_r($result);
?>
Questo produrrà il seguente risultato:
Array
(
[0] => 0
[1] => 5
)