array_diff_assoc

(PHP 4 >= 4.3.0, PHP 5, PHP 7, PHP 8)

array_diff_assocCalcola la differenza tra array con un ulteriore controllo sull'indice

Descrizione

array_diff_assoc(array $array, array ...$arrays): array

Confronta array con arrays e restituisce la differenza. A differenza di array_diff(), nel confronto vengono utilizzate anche le chiavi dell'array.

Elenco dei parametri

array

L'array da confrontare

arrays

Gli array con cui confrontare

Valori restituiti

Restituisce un array contenente tutti i valori dell' array che non sono presenti in nessuno degli altri array.

Esempi

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
    )

Note

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.

Vedere anche:

  • array_diff() - Calcola la differenza di due o più array
  • array_diff_uassoc() - Computes the difference of arrays with additional index check which is performed by a user supplied callback function
  • array_udiff_assoc() - Computes the difference of arrays with additional index check, compares data by a callback function
  • array_udiff_uassoc() - Computes the difference of arrays with additional index check, compares data and indexes by a callback function
  • array_intersect() - Calcola l'intersezione degli arrays
  • array_intersect_assoc() - Calcola l'intersezione degli array con un ulteriore controllo sugli indici