Oblicza różnicÄ™ tablic używajÄ…c funkcji zwrotnej do porównywania kluczy.
array_diff_ukey() zwraca tablicÄ™ zawierajÄ…cÄ… wszystkie wartoÅ›ci z tablica1 których klucze nie sÄ… obecne w żadnym z innych argumentów. Asocjacje sÄ… zachowywane. Funkcja ta jest podobna do array_diff(), z tym że porównywane sÄ… klucze a nie wartoÅ›ci.
Porównanie jest dokonywane przy pomocy podanej funkcji zwrotnej. Musi ona zwracać liczbÄ™ caÅ‚kowitÄ… mniejszÄ…, równÄ… lub wiÄ™kszÄ… od zera jeÅ›li pierwszy klucz jest uznawany za mniejszy, równy lub wiÄ™kszy drugiego.
Informacja: Funkcja ta sprawdza tylko jeden wymiar n-wymiarowej tablicy. Można sprawdzać głębsze wymiary przez użycie, na przykład array_diff_assoc($tablica1[0], $tablica2[0], 'funkcja_zwrotna');.
Kompatybilność: PHP5.
Listing
function porownaj_klucze($klucz1, $klucz2)
{
if ($klucz1 == $klucz2)
return 0;
else if ($klucz1 > $klucz2)
return 1;
else
return -1;
}
$tablica1 = tablica('niebieski' => 1, 'czerwony' => 2, 'zielony' => 3, 'purpurowy' => 4);
$tablica2 = tablica('zielony' => 5, 'niebieski' => 6, 'żółty' => 7, 'cyan' => 8);
var_dump(array_diff_ukey($tablica1, $tablica2, 'porownaj_klucze'));
?>
Powyższy przykład wyświetli:
array(2) {
["czerwony"]=>
int(2)
["purpurowy"]=>
int(4)
}
Ranga: Administrator serwisu Punktów: 38473

