(PHP 4 >= 4.3.0, PHP 5, PHP 7)
array_intersect_assoc — Dizilerin kesişimini hesaplarken ek olarak indisleri de karşılaştırır
$dizi1
, array $dizi2
[, array $ ...
] )
array_intersect_assoc() işlevi tüm değiştirgelerinde
mevcut olan dizi1 değerlerini içeren bir dizi
döndürür. array_intersect() işlevinin aksine
karşılaştırmada anahtarların kullanıldığına dikkat ediniz.
dizi1Diğer dizilerin karşılaştırılacağı ilk dizi.
dizi2Değerleri ilk dizi ile karşılaştırılacak dizi.
...Değerleri ilk dizi ile karşılaştırılacak diğer dizilerin değişkenlerinin listesi.
Tüm değiştirgelerde mevcut dizi1 değerlerini içeren
bir dizi döndürür.
Örnek 1 - array_intersect_assoc() örneği
<?php
$array1 = array("a" => "green", "b" => "brown", "c" => "blue", "red");
$array2 = array("a" => "green", "b" => "yellow", "blue", "red");
$result_array = array_intersect_assoc($array1, $array2);
print_r($result_array);
?>
Yukarıdaki örneğin çıktısı:
Array
(
[a] => green
)
Örnekte gördüğünüz gibi her iki dizide de sadece "a" => "green" ortak olduğundan dönen dizi sadece bu elemanı içermektedir. "red" değerinin döndürülmeme sebebi birinci dizide indisi 0 iken ikinci dizide 1 olmasıdır. "b" değerinin döndürülmeme sebebi de değerinin her dizide farklı olmasıdır.
İki elemanın eşit olması için sadece ve sadece (string) $elem1 === (string) $elem2 olmalıdır. Başka bir deyişle, elemanların dizgesel gösterimleri aynı olmalıdır.