array_intersect_key

(PHP 5 >= 5.1.0, PHP 7)

array_intersect_keyKarşılaştırma için anahtarları kullanarak dizilerin kesişimini hesaplar

Açıklama

array_intersect_key ( array $dizi1 , array $dizi2 [, array $ ... ] ) : 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.

Değiştirgeler

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.

Dönen Değerler

dizi1 dizisinin tüm değiştirgelerde mevcut anahtarlarından oluşan bir ilişkisel dizi döndürür.

Örnekler

Ö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.

Ayrıca Bakınız

  • array_diff() - Dizilerin farkını hesaplar
  • array_udiff() - Veri karşılaştırması için bir geriçağırım işlevi kullanarak diziler arasındaki farkı bulur
  • array_diff_assoc() - Dizilerin farkını hesaplarken ek olarak indisleri de karşılaştırır
  • array_diff_uassoc() - Dizilerin farkını hesaplarken ek olarak bir geriçağırım işlevi üzerinden indisleri de karşılaştırır
  • array_udiff_assoc() - Veri karşılaştırması için bir geriçağırım işlevi kullanarak diziler arasındaki farkı indislerine de bakarak bulur
  • array_udiff_uassoc() - Veri ve indis karşılaştırması için bir geriçağırım işlevi kullanarak diziler arasındaki farkı indislerine de bakarak bulur
  • array_diff_key() - Dizilerin farkını hesaplarken indisleri karşılaştırır
  • array_diff_ukey() - Karşılaştırma için bir geriçağırım işlevi kullanarak dizilerin farkını hesaplar
  • array_intersect() - Dizilerin kesişimini hesaplar
  • array_intersect_assoc() - Dizilerin kesişimini hesaplarken ek olarak indisleri de karşılaştırır
  • array_intersect_uassoc() - Dizilerin kesişimini hesaplarken ek olarak bir geriçağırım işlevi üzerinden indisleri de karşılaştırır
  • array_intersect_ukey() - Anahtarları karşılaştırmak için bir geriçağırım işlevi kullanarak dizilerin kesişimini hesaplar