array_diff Fonksiyonu
array_diff fonksiyonu dizileri karşılaştırır ve ilk dizide bulunup, diğer iletilen dizilerde bulunmayan elemanları döndürür. Elemanların anahtarları korunur. İlk parametre olarak ana dizi, sonrakiler ise karşılaştırma için kullanılacak diziler iletilir.
Sözdizimi
array_diff(array1, array2, array3, ...);
Örnek
İki diziyi karşılaştıralım ve ilkinde olup ikincisinde olmayan elemanları bulalım:
<?php
$arr1 = [1, 2, 3, 4];
$arr2 = [2, 4, 5];
$res = array_diff($arr1, $arr2);
print_r($res);
?>
Kodun çalıştırılma sonucu:
[0 => 1, 2 => 3]
Örnek
Üç dizinin karşılaştırılması:
<?php
$arr1 = ['a', 'b', 'c', 'd'];
$arr2 = ['b', 'd'];
$arr3 = ['d', 'e'];
$res = array_diff($arr1, $arr2, $arr3);
print_r($res);
?>
Kodun çalıştırılma sonucu:
[0 => 'a', 2 => 'c']
Örnek
İlişkisel dizilerin karşılaştırılması (anahtarlar dikkate alınmaz, sadece değerler karşılaştırılır):
<?php
$arr1 = ['a' => 1, 'b' => 2, 'c' => 3];
$arr2 = ['x' => 2, 'y' => 3];
$res = array_diff($arr1, $arr2);
print_r($res);
?>
Kodun çalıştırılma sonucu:
['a' => 1]
Ayrıca Bakınız
-
dizilerin ortak elemanlarını döndüren
array_intersect
fonksiyonu