array_diff_assoc

(PHP 4 >= 4.3.0, PHP 5, PHP 7)

array_diff_assocDizilerin farkını hesaplarken ek olarak indisleri de karşılaştırır

Açıklama

array_diff_assoc ( array $dizi1 , array $dizi2 [, array $... ] ) : array

dizi1 ile dizi2'yi karşılaştırır ve farkı döndürür. Değerler yerine anahtarları karşılaştırması dışında array_diff() işlevi gibidir.

Değiştirgeler

dizi1

Karşılaştırılacak dizi.

dizi2

Karşılaştırılacak diğer dizi.

...

Karşılaştırılacak diğer diziler.

Dönen Değerler

Diğer tüm değiştirgelerde mevcut olmayan dizi1 girdilerinden oluşan bir dizi döner.

Örnekler

Örnek 1 - array_diff_assoc() örneği - 1

"a" => "green" çifti her iki dizide de mevcut olduğundan bu eleman çıktıda bulunmaz. 0 => "red" çifti ise aksine, ikinci "red" değeri 1 anahtarına sahip olduğundan çıktıda bulunur.

<?php
$dizi1 
= array("a" => "green""b" => "brown""c" => "blue""red");
$dizi2 = array("a" => "green""yellow""red");
$sonuc array_diff_assoc($dizi1$dizi2);
print_r($sonuc);
?>

Yukarıdaki örneğin çıktısı:

Array
(
    [b] => brown
    [c] => blue
    [0] => red
)

Örnek 2 - array_diff_assoc() örneği - 2

İki elemanın eşit olması için sadece ve sadece (string) $elem1 === (string) $elem2 olmalıdır. Başka bir deyişle, dizgesel gösterimler aynı olmalıdır.

<?php
$array1 
= array(012);
$array2 = array("00""01""2");
$result array_diff_assoc($array1$array2);
print_r($result);
?>

Yukarıdaki örneğin çıktısı:

Array
(
    [0] => 0
    [1] => 1
    )

Notlar

Bilginize: Bu işlev n boyutlu bir dizinin sadece bir boyutunu karşılaştırır. Daha derinliğine karşılaştırmalar yapmak için array_diff_assoc($dizi1[0], $dizi2[0]); sözdizimini kullanabilirsiniz.

Bilginize: Çok fazla anahtara sahip benzer dizileri karşılaştırırken değiştirgeleri doğru sırada vermeye dikkat edin. Yeni dizi listedeki ilk dizi olmalıdır.

Ayrıca Bakınız