Fonksiyon array_intersect_uassoc
Fonksiyon array_intersect_uassoc dizileri karşılaştırır ve tüm dizilerde bulunan öğeleri döndürür, anahtar karşılaştırması için callback fonksiyonu kullanır. İlk parametre ana dizi, sonrakiler karşılaştırma için diziler ve son parametre anahtarları karşılaştırmak için callback fonksiyonudur.
Sözdizimi
array_intersect_uassoc(array $array1, array $array2, ..., callable $key_compare_func): array;
Örnek
Kullanıcı fonksiyonu ile anahtar kontrolü yaparak iki diziyi karşılaştıralım:
<?php
$array1 = ['a' => 1, 'b' => 2, 'c' => 3];
$array2 = ['a' => 1, 'b' => 5, 'c' => 3];
function compareKeys($a, $b) {
return $a <=> $b;
}
$res = array_intersect_uassoc($array1, $array2, 'compareKeys');
print_r($res);
?>
Kodun çalıştırılma sonucu:
['a' => 1, 'c' => 3]
Örnek
Kullanıcı tanımlı anahtar karşılaştırma fonksiyonu ile üç diziyi karşılaştıralım:
<?php
$array1 = [1 => 'a', 2 => 'b', 3 => 'c'];
$array2 = [1 => 'a', 4 => 'b', 3 => 'd'];
$array3 = [1 => 'a', 3 => 'e'];
function keyCompare($key1, $key2) {
if ($key1 == $key2) {
return 0;
}
return ($key1 < $key2) ? -1 : 1;
}
$res = array_intersect_uassoc($array1, $array2, $array3, 'keyCompare');
print_r($res);
?>
Kodun çalıştırılma sonucu:
[1 => 'a']
Ayrıca bakınız
-
fonksiyonu
array_intersect,
anahtar kontrolü yapmadan dizilerin kesişimini hesaplar -
fonksiyonu
array_intersect_assoc,
anahtar kontrolü ile dizilerin kesişimini hesaplar -
fonksiyonu
array_uintersect_assoc,
callback fonksiyonu ile anahtar kontrolü yaparak dizilerin kesişimini hesaplar