Fonksiyon array_diff_ukey
array_diff_ukey fonksiyonu, birden fazla dizinin anahtarlarını karşılaştırır ve ilk dizide bulunup diğer dizilerde bulunmayan anahtarlara sahip öğeleri döndürür. Anahtar karşılaştırması için kullanıcı tarafından sağlanan bir callback fonksiyonu kullanılır. İlk parametre olarak ana dizi, sonraki parametreler olarak karşılaştırma yapılacak diziler ve son parametre olarak callback fonksiyonu iletilir.
Sözdizimi
array_diff_ukey(array $array1, array $array2 [, array $... ], callable $key_compare_func): array
Örnek
İki dizinin anahtarlarını, strcasecmp callback fonksiyonunu (büyük/küçük harf duyarsız karşılaştırma) kullanarak karşılaştıralım:
<?php
$array1 = ['A' => 1, 'b' => 2, 'C' => 3];
$array2 = ['a' => 4, 'B' => 5];
$res = array_diff_ukey($array1, $array2, 'strcasecmp');
print_r($res);
?>
Kodun çalıştırılmasının sonucu:
['C' => 3]
Örnek
Kullanıcı tanımlı bir callback fonksiyonu ile üç diziyi karşılaştıralım:
<?php
function keyCompare($key1, $key2) {
return $key1 <=> $key2;
}
$array1 = [1 => 'a', 2 => 'b', 3 => 'c'];
$array2 = [1 => 'd', 4 => 'e'];
$array3 = [2 => 'f'];
$res = array_diff_ukey($array1, $array2, $array3, 'keyCompare');
print_r($res);
?>
Kodun çalıştırılmasının sonucu:
[3 => 'c']
Ayrıca Bakınız
-
array_difffonksiyonu,
dizileri değerlere göre karşılaştırır -
array_diff_keyfonksiyonu,
dizileri anahtarlara göre karşılaştırır -
array_udifffonksiyonu,
dizileri bir callback fonksiyonu aracılığıyla karşılaştırır