Az array_uintersect függvény
Az array_uintersect függvény tömbök metszetét számítja ki, értékeik összehasonlításához callback függvényt használva. Visszaad egy tömböt, amely az első tömbből tartalmazza az összes elemet, amely minden további tömbben is megtalálható. Az értékek összehasonlítása egy felhasználói callback függvényen keresztül történik.
Szintaxis
array_uintersect(array $array1, array $array2, ..., callable $value_compare_func): array;
Példa
Keressük meg két tömb metszetét, értékeik összehasonlítását egy callback függvénnyel végezve:
<?php
$array1 = [1, 2, 3, 4, 5];
$array2 = [2, 4, 6, 8, 10];
$res = array_uintersect($array1, $array2, function($a, $b) {
if ($a === $b) {
return 0;
}
return ($a > $b) ? 1 : -1;
});
print_r($res);
?>
A kód végrehajtásának eredménye:
[2, 4]
Példa
Stringeket tartalmazó tömbök összehasonlítása egy felhasználói függvénnyel:
<?php
$array1 = ['a', 'b', 'c', 'd', 'e'];
$array2 = ['b', 'd', 'f', 'h', 'j'];
$res = array_uintersect($array1, $array2, function($a, $b) {
return strcmp($a, $b);
});
print_r($res);
?>
A kód végrehajtásának eredménye:
['b', 'd']
Lásd még
-
a
array_intersectfüggvényt,
amely tömbök metszetét számítja ki -
a
array_intersect_assocfüggvényt,
amely tömbök metszetét számítja ki index ellenőrzéssel együtt -
a
array_uintersect_assocfüggvényt,
amely tömbök metszetét számítja ki index ellenőrzéssel együtt, callback függvényt használva