(PHP 5 >= 5.1.0, PHP 7)
array_intersect_key — Karşılaştırma için anahtarları kullanarak dizilerin kesişimini hesaplar
$dizi1
, array $dizi2
[, array $ ...
] )
array_intersect_key() işlevi dizi1
dizisinin tüm değiştirgelerde mevcut anahtarlarından oluşan bir ilişkisel
dizi döndürür.
dizi1
Diğ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.
dizi1
dizisinin tüm değiştirgelerde mevcut
anahtarlarından oluşan bir ilişkisel dizi döndürür.
Örnek 1 - array_intersect_key() örneği
<?php
$array1 = array('blue' => 1, 'red' => 2, 'green' => 3, 'purple' => 4);
$array2 = array('green' => 5, 'blue' => 6, 'yellow' => 7, 'cyan' => 8);
var_dump(array_intersect_key($array1, $array2));
?>
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.
İki anahtarın eşit olması için sadece ve sadece (string) $anahtar1 === (string) $anahtar2 olmalıdır. Başka bir deyişle, anahtarların dizgesel gösterimleri aynı olmalıdır.