Corso raccomandato:
Funzione array_uintersect() in PHP
Esempio
<?php function myfunction($a,$b) { if ($a===$b) { return 0; } return ($a>$b)?1:-1; } Confronta i valori delle chiavi di due array (utilizzando una funzione di confronto personalizzata) e restituisce l'intersezione: $a1=array("a"=>"red","b"=>"green","c"=>"blue"); $result=$a2=array("a"=>"blue","b"=>"black","e"=>"blue"); print_r($result); ?>
array_uintersect($a1,$a2,"myfunction");
Definizione e uso
La funzione array_uintersect() viene utilizzata per confrontare i valori delle chiavi di due (o più) array e restituire l'intersezione.Commento:
Questa funzione confronta due (o più) array di valori delle chiavi e restituisce un array di intersezione, che include tutti gli elementi degli array confrontati (array1)e anche in qualsiasi altro array di parametri (array2 o array3 e così via) delle chiavi.
Sintassi
array_uintersect(array1,array2,array3...myfunction)
Parametri | Descrizione |
---|---|
array1 | Obbligatorio. Primo array da confrontare con 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 che definisce la funzione di confronto的可调用. Se il primo parametro è inferiore o uguale a o maggiore del secondo parametro, la funzione di confronto deve restituire un intero positivo o negativo uguale o inferiore a 0. |
Spiegazione
utilizzando una funzione di callback personalizzata myfunction per calcolare l'intersezione di due o più array (ovvero array1 contenenti tutti gli elementi degli array che esistono anche in altri qualsiasi array), e restituisce l'array dei risultati.
Solamente si effettua la comparazione dei valori delle chiavi, non dei nomi delle chiavi, quindi gli elementi "a"=>1 e "b"=>1 vengono considerati uguali.
myfunction La funzione specificata dai parametri viene utilizzata per confrontare se gli elementi sono uguali.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, restituisce un numero positivo.
Il nome delle chiavi dell'array restituito rimane invariato.
Dettagli tecnici
Valore di ritorno: |
Restituisce un array che include tutte le chiavi presenti in array1 e anche in tutti gli altri array. Restituisce un array di intersezione che include unità presenti in tutti gli array confrontati (array1)e anche in qualsiasi altro array di parametri (array2 o array3 e così via) delle chiavi. |
Versione PHP: | 5+ |
Più esempi
Esempio 1
Confronta i valori delle chiavi di tre array (utilizzando la funzione personalizzata dell'utente per confrontare le chiavi) e restituisce l'intersezione:
<?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_uintersect($a1,$a2,$a3,"myfunction"); print_r($result); ?>