Funkcija array_uintersect
Funkcija array_uintersect aprēķina masīvu krustpunktu, salīdzinot vērtības, izmantojot callback funkciju. Tā atgriež masīvu, kas satur visus elementus no pirmā masīva, kas atrodas visos pārējos masīvos. Vērtību salīdzināšana notiek, izmantojot lietotāja definētu callback funkciju.
Sintakse
array_uintersect(array $array1, array $array2, ..., callable $value_compare_func): array;
Piemērs
Atradīsim divu masīvu krustpunktu, salīdzinot to vērtības, izmantojot callback funkciju:
<?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);
?>
Koda izpildes rezultāts:
[2, 4]
Piemērs
Virkņu masīvu salīdzināšana, izmantojot lietotāja funkciju:
<?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);
?>
Koda izpildes rezultāts:
['b', 'd']
Skatiet arī
-
funkciju
array_intersect,
kas aprēķina masīvu krustpunktu -
funkciju
array_intersect_assoc,
kas aprēķina masīvu krustpunktu ar papildu indeksa pārbaudi -
funkciju
array_uintersect_assoc,
kas aprēķina masīvu krustpunktu ar papildu indeksa pārbaudi, izmantojot callback funkciju