anbefalet kursus:

PHP array_uintersect() funktion

eksempel

<?php
function myfunction($a,$b)
{
if ($a===$b)
  {
  return 0;
  }
  return ($a>$b)?1:-1;
}
sammenlign nøglerne i to arrays (brug brugerdefinerede funktioner til at sammenligne nøglerne) og returner intersectionen:
$a1=array("a"=>"red","b"=>"green","c"=>"blue");
$result=$a2=array("a"=>"blue","b"=>"black","e"=>"blue");
print_r($result);
?>

Kør eksempel

array_uintersect($a1,$a2,"myfunction");

definition og brug

array_uintersect() funktionen bruges til at sammenligne nøglerne i to (eller flere) arrays og returnere intersectionen.kommentarer:

Denne funktion sammenligner to (eller flere) arrays' nøgler og returnerer en intersectionsoverensstemmende array, der inkluderer alle elementer i de sammenlignede arrays (array1osv.) og også i alle andre parameterarrayer (array2 eller array3 osv.) nøglerne.

syntaks

array_uintersect(array1,array2,array3...myfunction)
parametre beskrivelse
array1 obligatorisk. Den første array, der sammenlignes med andre arrays.
array2 obligatorisk. Arrayet, der sammenlignes med den første array.
array3,... valgfri. Andre arrays, der sammenlignes med den første array.
myfunction

obligatorisk. Strengværdi, der definerer den kaldbare sammenligningsfunktion.

hvis den første parameter er mindre end eller lig med, eller større end og større end den anden parameter, skal sammenligningsfunktionen returnere et mindre end eller lig med 0 heltal.

beskrivelse

brug brugerdefinerede callback-funktioner myfunction for at beregne intersectionen af to eller flere arrays (dvs. array1 der findes i alle andre arrays), og returnerer resultatarrangementet.

Kun sammenligning af nøgler, ikke nøglenavne, så "a"=>1 og "b"=>1 betragtes som ens.

myfunction Den funktion specificeret af parameteren bruges til at sammenligne, om elementer er ens.myfunction Funktionen har to parametre, der skal sammenlignes. Hvis den første parameter er mindre end den anden, returnerer funktionen et negativt tal, hvis de to parametre er ens, returneres 0, og hvis den første parameter er større end den anden, returneres et positivt tal.

Nøglenavnene i den returnerede array forbliver uændrede.

Tekniske detaljer

Returværdi:

Returnerer en array, der indeholder alle i array1 indeholder alle enheder, der findes både i

Returnerer en intersection array, der inkluderer enheder, der findes i alle de sammenlignede arrayer (array1osv.) og også i alle andre parameterarrayer (array2 eller array3 osv.) nøglerne.

PHP Version: 5+

Flere eksempler

Eksempel 1

Sammenlign nøglerne i tre arrayer (brug brugerdefineret funktion til at sammenligne nøglerne) og returner intersectionen:

<?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);
?>

Kør eksempel