(PHP 5 >= 5.1.0, PHP 7, PHP 8)
array_diff_key — Dizilerin farkını hesaplarken indisleri karşılaştırır
dizi
ile diziler
'i 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.
dizi
Karşılaştırılacak dizi.
diziler
Karşılaştırılacak diğer diziler.
Diğer dizilerde mevcut olmayan dizi
anahtarlarından oluşan bir dizi döner.
Sürüm: | Açıklama |
---|---|
8.0.0 | Bu işlev artık yalnızca tek bir bağımsız değişken ile çağrılabiliyor. Evvelve en az iki bağımsız değişken gerekirdi. |
Örnek 1 - array_diff_key() örneği
İki anahtarın eşit olması için sadece ve sadece (string) $elem1 === (string) $elem2
olmalıdır. Başka bir deyişle, dize gösterimleri aynı olmalıdır.
<?php
$array1 = array('blue' => 1, 'red' => 2, 'green' => 3, 'purple' => 4);
$array2 = array('green' => 5, 'yellow' => 7, 'cyan' => 8);
var_dump(array_diff_key($array1, $array2));
?>
Yukarıdaki örneğin çıktısı:
array(3) { ["blue"]=> int(1) ["red"]=> int(2) ["purple"]=> int(4) }
<?php
$array1 = array('blue' => 1, 'red' => 2, 'green' => 3, 'purple' => 4);
$array2 = array('green' => 5, 'yellow' => 7, 'cyan' => 8);
$array3 = array('blue' => 6, 'yellow' => 7, 'mauve' => 8);
var_dump(array_diff_key($array1, $array2, $array3));
?>
Yukarıdaki örneğin çıktısı:
array(2) { ["red"]=> int(2) ["purple"]=> int(4) }
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_key($dizi1[0], $dizi2[0]);
sözdizimini kullanabilirsiniz.