(PHP 5 >= 5.1.0, PHP 7)
array_intersect_ukey — Anahtarları karşılaştırmak için bir geriçağırım işlevi kullanarak dizilerin kesişimini hesaplar
$dizi1
, array $dizi2
[, array $...
], callable $anh_karş_işlevi
)
array_intersect_ukey() işlevi tüm değiştirgelerinde
mevcut olan ve anahtarları eşleşen tüm dizi1
değerlerini içeren bir dizi döndürür.
dizi1Diğer dizilerin karşılaştırılacağı ilk dizi.
dizi2İlk dizi ile karşılaştırılacak dizi.
...İlk dizi ile karşılaştırılacak diğer dizilerin değişkenlerinin listesi.
anh_karş_işleviKarşılaştırma işlevinin, ilk bileşeninin ikinci bileşenden küçük, eşit veya büyük olması durumunda sıfırdan küçük, eşit veya büyük bir tamsayı döndürmesi gerekir.
Anahtarları tüm değiştirgelerde mevcut
dizi1 değerlerini içeren bir dizi döndürür.
Örnek 1 - array_intersect_ukey() örneği
<?php
function anh_kars_islevi($a1, $a2)
{
if ($a1 == $a2)
return 0;
else if ($a1 > $a2)
return 1;
else
return -1;
}
$dizi1 = array('blue' => 1, 'red' => 2, 'green' => 3, 'purple' => 4);
$dizi2 = array('green' => 5, 'blue' => 6, 'yellow' => 7, 'cyan' => 8);
var_dump(array_intersect_ukey($dizi1, $dizi2, 'anh_kars_islevi'));
?>
Yukarıdaki örneğin çıktısı:
array(2) {
["blue"]=>
int(1)
["green"]=>
int(3)
}
Örnekte gördüğünüz gibi her iki dizide de sadece 'blue'
ve 'green' anahtarları ortak olduğundan dönen dizi
sadece bu elemanları içermektedir. Ayrıca, dizilerde
'blue' ve 'green' anahtarlı
elemanların değerlerinin farklı oluşuna da dikkat ediniz. Sadece
anahtarlara bakıldığından bir eşleşme oluşmakta ve sadece
dizi1 dizisindeki değerler döndürülmektedir.