PHP: Array’in boş elemanlarını atmak

Wednesday February 27th 2008, 16:20 pm |   |  Web Teknolojileri | by eser s.

Diyelim ki elimize aşağıdaki gibi bir array geldi ve bu array’in boş olan elemanlarını atarak sadece dolu olan elemanları almak istiyoruz.

  1. print_r($sampleArray);
  2. //çıktısı:
  3. /* Array (
  4.     [0] => 2008.12
  5.     [1] => 17:44:44
  6.     [2] =>
  7.     [3] => 36
  8.     [4] => Ankara
  9.     [5] =>
  10.     [6] => 35.51
  11.     [7] =>
  12.     [8] =>
  13.     [9] =>
  14.     [10] =>
  15.     [11] =>
  16.     [12] =>
  17.     [13] => 12
  18. ) */
  19.  

Normalde bunu bir foreach çevirerek sadece dolu değerlerleri (empty ile kontrol edebiliriz) yeni bir array’e atarak yapabiliriz.

Ancak bu işlemi sadece tek bir satırda yapacak çok güzel bir fonksiyon var: array_filter()

  1.  
  2. <?php
  3. $sampleArray = array_filter($sampleArray);
  4. print_r($sampleArray);
  5. //çıktısı:
  6. /* Array (
  7.     [0] => 2008.12
  8.     [1] => 17:44:44
  9.     [3] => 36
  10.     [4] => Ankara
  11.     [6] => 35.51
  12.     [13] => 12
  13. ) */
  14. ?>
  15.  
  16.  

Ek bilgiler:
* Bu fonksiyona siz kendiniz ikinci bir parametre olarak bir callback fonksiyon vererek filtreleme sağlayabilirsiniz.
* Eğer callback fonksiyonu vermezseniz, yukarıdaki örnekteki gibi boş elemanları atıp sadece dolu elemanları bırakacak.
* NULL, ” “, false vb. değerler de boş sayılıp atılıyor.

Detaylı bilgi PHP manual’inde:
http://tr2.php.net/manual/en/function.array-filter.php


Comments
No Comments   |    |  Comments RSS on this post.  |  
No comments yet.

Sorry, the comment form is closed at this time.

 
SHATO Web Hosting Services