Array Diff ile Array Elemanlarını Filtreleme
Merhaba arkadaşlar, bu yazımızda bir array içerisinde istemediğimiz elemanları (boş olanlar vb) array_diff ile kolayca nasıl temizleyebileceğimizi (filtreleyebileceğimizi) inceleyeceğiz.
Kullanacağımız yöntemle önce array elemanları üzerinde işlem yapacağız. Daha sonra array anahtarları üzerinde işlem yapmayı göreceğiz.
array_diff ile Boş Elemanları Temizleme:
$arr1 arrayimizi boş bir array ile array_diff kullanarak karşılaştırıyoruz. array_diff bize boş değerli olmayan elemanların bulunduğu yeni bir array döndürüyor.
<?php $arr1 = array("isim" => "Ahmet", "soyisim" => "AY", "adres" => ""); $newArr = array_diff($arr1, array("")); print_r($newArr); ?>
Çıktısı :
Array ( [isim] => Ahmet [soyisim] => AY )
array_diff_key ile Boş Anahtarlı Arrayleri Temizleme:
Yine $arr1 arrayimizi anahtarıda boş bir array ile array_diff_key kullanarak karşılaştırıyoruz. array_diff_key bize anahtarı boş olmayan elemanların bulunduğu yeni bir array döndürüyor.
<?php $arr1 = array("isim" => "Ahmet", "soyisim" => "AY", "adres" => "", "" => "ekstra bilgi"); $newArr = array_diff_key($arr1, array("" => "")); print_r($newArr); ?>
Çıktısı :
Array ( [isim] => Ahmet [soyisim] => AY [adres] => )
Sonuç:
Sonuç olarak array_diff kullanarak birçok işlevi yerine getirebiliriz. array_diff ‘in değerler üzerinde, array_diff_key ‘in ise anahtarlar üzerinde işlem yaptığını unutmayalım.
Herkese İyi Çalışmalar
Merhaba Mustafa;
Güzel bir bilgi eline sağlık. Aynı konuya ben de değinmiştim bir zamanlar. array_diff ile arrayden bir eleman çıkartma başlığı altında.
http://kecher.blogcu.com/php-array-den-bir-eleman-cikartma/10184878
Çalışmaların devamını dilerim.
Teşekkürler. Çok işime yaradı.