(PHP 4 >= 4.3.0, PHP 5, PHP 7, PHP 8)
array_diff_assoc — Calcola la differenza tra array con un ulteriore controllo sull'indice
Confronta array con arrays e
restituisce la differenza. A differenza di array_diff(), nel confronto
vengono utilizzate anche le chiavi dell'array.
arrayL'array da confrontare
arraysGli array con cui confrontare
Restituisce un array contenente tutti i valori dell'
array che non sono presenti in nessuno degli altri array.
Example #1 Esempio di array_diff_assoc()
In questo esempio si vede che la coppia "a" => "verde"
è presente in entrambi gli array e quindi non è nel risultato della
funzione. Invece, la coppia 0 => "rosso"
è nel risultato perché nel secondo argomento "red"
ha come chiave 1.
<?php
$array1 = array("a" => "verde", "b" => "marrone", "c" => "blu", "rosso");
$array2 = array("a" => "verde", "giallo", "rosso");
$result = array_diff_assoc($array1, $array2);
print_r($result);
?>Il precedente esempio visualizzerà:
Array
(
[b] => marrone
[c] => blu
[0] => rosso
)
Example #2 Esempio di array_diff_assoc()
Due valori delle coppie chiave => valore sono
considerati uguali solo se (string) $elem1 === (string)
$elem2 . In altre parole c'è un controllo stringente che si accerta
che le rappresentazioni sotto forma di stringa siano uguali.
<?php
$array1 = array(0, 1, 2);
$array2 = array("00", "01", "2");
$result = array_diff_assoc($array1, $array2);
print_r($result);
?>Il precedente esempio visualizzerà:
Array
(
[0] => 0
[1] => 1
)
Nota: Si noti che questa funzione controlla solo una dimensione di un array n-dimensionale. Ovviamente è possibile controllare le altre dimensioni usando, per esempio,
array_diff_assoc($array1[0], $array2[0]);.
Nota: Assicurarsi di passare gli argomenti nell'ordine corretto quando si confrontano array simili con più chiavi. Il nuovo array dovrebbe essere il primo nella lista.