English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Tutorial di base PHP

Tutorial avanzato PHP

PHP & MySQL

Manuale di riferimento PHP

Uso e esempio della funzione array_udiff_assoc() in PHP

PHP Array Funzione Manuale

La funzione array_udiff_assoc() viene utilizzata per confrontare i nomi delle chiavi e i valori di due (o più) array e restituire l'insieme di differenza.

Sintassi

array_udiff_assoc ( $array1, $array2 [, $array3 ..., $data_compare_func] );

Definizione e utilizzo

Questo confronto avviene tramite una funzione di callback fornita dall'utente. Se si ritiene che il primo parametro sia minore, uguale o maggiore del secondo parametro, è necessario restituire un intero minore, uguale o maggiore zero rispettivamente.

Utilizza un controllo aggiuntivo dell'indice per calcolare la differenza dell'array, confronta i dati tramite una funzione di callback e restituisce un array che include tutti i valori di array1 che non compaiono in nessun altro parametro.

Parametro

Numero di sequenzaParametri e descrizione
1

array1(obbligatorio)

Specifica un array.

2

array2(obbligatorio)

Specifica l'array da confrontare con il primo array.

3

array3(opzionale)

Specifica l'array da confrontare con il primo array.

4

data_compare_func*(obbligatorio)

Nome della funzione personalizzata dell'utente.

Valori di ritorno

array_udiff_assoc() restituisce un array che include tutti i valori presenti in array1 ma non in nessun altro array tra i parametri. Attenzione: a differenza di array_diff() e array_udiff(), anche i nomi delle chiavi vengono utilizzati per il confronto. Il confronto dei dati dell'array avviene tramite una funzione di callback fornita dall'utente. In questo senso, il comportamento è esattamente opposto a quello di array_diff_assoc(), che utilizza una funzione interna per il confronto.

Esempio online

L'uso di array_udiff_assoc con una funzione di callback personalizzata per confrontare la differenza tra due array

<?php
   function call_back_function($v1,$v2) {
      if ($v1 === $v2) {
         return 0;
      }
      return 1;
   }
   $input = array("a"=>"arancia","b"=>"arancia","c"=>"mango");
   $input1 = array("a"=>"arancia","b"=>"mango","c"=>"arancia");
   
   print_r(array_udiff_assoc($input,$input1,"call_back_function"));
?>
Testa e vedi‹/›

Risultato di output:

Array ( [b] => arancia [c] => mango )

   PHP Array Funzione Manuale