Funksjonen array_intersect_ukey
Funksjonen array_intersect_ukey tar flere arrays og en callback-funksjon for sammenligning av deres nøkler. I den første parameteren sendes hovedarrayen, og i de påfølgende - arrayer for sammenligning. Den siste parameteren sendes en callback-funksjon, som skal sammenligne nøkler og returnere et heltall (mindre, lik eller større enn null).
Syntaks
array_intersect_ukey(array $array1, array $array2, ..., callable $key_compare_func): array
Eksempel
La oss sammenligne nøklene til to arrays ved hjelp av en brukerdefinert funksjon:
<?php
$array1 = ['a' => 1, 'b' => 2, 'c' => 3];
$array2 = ['a' => 4, 'c' => 5, 'd' => 6];
$res = array_intersect_ukey($array1, $array2, function($key1, $key2) {
return strcmp($key1, $key2);
});
print_r($res);
?>
Resultat av kjøring av koden:
['a' => 1, 'c' => 3]
Eksempel
Sammenligning av nøkler i tre arrays med følsomhet for store og små bokstaver:
<?php
$array1 = ['A' => 1, 'B' => 2, 'C' => 3];
$array2 = ['a' => 4, 'B' => 5, 'C' => 6];
$array3 = ['A' => 7, 'B' => 8, 'c' => 9];
$res = array_intersect_ukey($array1, $array2, $array3, function($key1, $key2) {
return strcmp($key1, $key2);
});
print_r($res);
?>
Resultat av kjøring av koden:
['B' => 2]
Se også
-
funksjonen
array_intersect,
som beregner krysset av arrays etter verdier -
funksjonen
array_intersect_key,
som beregner krysset av arrays etter nøkler -
funksjonen
array_uintersect,
som beregner krysset av arrays med callback-funksjon for sammenligning av verdier