PHP array_diff_ukey() funktion

Eksempel

Sammenlign nøglenavne i to arrayer (brug en brugerdefineret funktion til at sammenligne nøglenavne) og returner forskelsmængden:

<?php
function myfunction($a,$b)
{
if ($a===$b)
  {
  return 0;
  }
  return ($a>$b)?1:-1;
}
$a1=array("a"=>"rød","b"=>"grøn","c"=>"blå");
$a2=array("a"=>"blue","b"=>"black","e"=>"blue");
$result=array_diff_ukey($a1,$a2,"myfunction");
print_r($result);
?>

Kør en eksempel

Definition og brug

array_diff_ukey() funktionen bruges til at sammenligne nøglenavne i to (eller flere) arrayer og returnere forskelsmængden.

Kommentarer:Denne funktion bruger en brugerdefineret funktion til at sammenligne nøglenavne!

Denne funktion sammenligner nøglenavne i to (eller flere) arrayer og returnerer en forskelsmængde, der inkluderer alle nøgler, der findes i de sammenlignede arrayer (array1), men ikke i nogen andre parameterarrayer (array2 eller array3 osv.) nøglerne.

Syntaks

array_diff_ukey(array1,array2,array3...,myfunction);
Parameter Beskrivelse
array1 Nødvendigt. Den første array, der skal sammenlignes med andre arrayer.
array2 Nødvendigt. Arrayet, der skal sammenlignes med den første array.
array3,... Valgfri. Andre arrayer, der skal sammenlignes med den første array.
myfunction Nødvendigt. En streng, der definerer en sammenligningsfunktion, der kan kaldes. Hvis den første parameter er mindre end, lig med eller større end den anden parameter, skal sammenligningsfunktionen returnere et heltal mindre end, lig med eller større end 0.

Beskrivelse

array_diff_ukey() returnerer en array, der inkluderer alle nøglerne, der optræder array1 men ikke i nogen andre parameterarrays. Bemærk, at forholdet bevares. Forskellen med array_diff() er, at sammenligningen sker baseret på nøgler i stedet for værdier.

Denne sammenligning udføres gennem en brugerleveret callback-funktion. Det skal returneres et negativt heltal, nul eller et positivt heltal, hvis den første parameter er mindre end, lig med eller større end den anden parameter.

Tekniske detaljer

Returværdi: Returnerer forskelsarrays, som inkluderer alle nøglerne i de sammenlignede arrayer (array1), men ikke i nogen andre parameterarrayer (array2 eller array3 osv.) nøglerne.
PHP version: 5.1+

Flere eksempler

Eksempel 1

Komparér nøglerne i tre arrayer (brug brugerdefinerede funktioner til at sammenligne nøglerne) og returnér forskellen:

<?php
function myfunction($a,$b)
{
if ($a===$b)
  {
  return 0;
  }
  return ($a>$b)?1:-1;
}
$a1=array("a"=>"rød","b"=>"grøn","c"=>"blå");
$a2=array("a"=>"sort","b"=>"gul","d"=>"brun");
$a3=array("e"=>"lilla","f"=>"hvid","a"=>"guld");
$result=array_diff_ukey($a1,$a2,$a3,"myfunction");
print_r($result);
?>

Kør en eksempel