Functie array_uintersect_assoc
De functie array_uintersect_assoc retourneert een array die alle elementen van de eerste array bevat die aanwezig zijn in alle andere arrays. De vergelijking van sleutels en waarden wordt uitgevoerd met behulp van een door de gebruiker gedefinieerde callback-functie.
Syntaxis
array_uintersect_assoc(array $array1, array $array2, ..., callable $value_compare_func): array
Voorbeeld
Vergelijking van arrays met een aangepaste functie:
<?php
function compare($a, $b) {
if ($a === $b) {
return 0;
}
return ($a > $b) ? 1 : -1;
}
$array1 = ["a" => "green", "b" => "brown", "c" => "blue"];
$array2 = ["a" => "GREEN", "B" => "brown", "c" => "blue"];
print_r(array_uintersect_assoc($array1, $array2, "strcasecmp"));
?>
Resultaat van de code-uitvoering:
Array
(
[a] => green
[c] => blue
)
Voorbeeld
Vergelijking met numerieke waarden:
<?php
function numCompare($a, $b) {
return $a <=> $b;
}
$array1 = [10 => "apple", 20 => "banana", 30 => "cherry"];
$array2 = [10 => 10, 20 => "banana", 40 => "cherry"];
print_r(array_uintersect_assoc($array1, $array2, "numCompare"));
?>
Resultaat van de code-uitvoering:
Array
(
[20] => banana
)
Zie ook
-
de functie
array_intersect_assoc,
die de doorsnede van arrays berekent met sleutelcontrole -
de functie
array_uintersect,
die de doorsnede van arrays berekent met een callback-functie (zonder sleutelcontrole)