readdir Fonksiyonu

readdir fonksiyonu, opendir ile açılan bir dizinin içeriğini okur. Her çağrıda bir sonraki dosyanın adını döndürür veya dosya kalmadıysa false döndürür. Fonksiyon, dizin içindeki pozisyon göstericisini içsel olarak saklar.

Sözdizimi

phpreaddir(resource $dir_handle): string|false

Örnek

Bir dizindeki tüm dosyaları okuma:

php<?php
  $dir = opendir('/dizin/yolu');
  
  while (($file = readdir($dir)) !== false) {
    echo $file . '<br>';
  }
  closedir($dir);
?>

Kodun çalıştırılmasının sonucu (örnek çıktı):

php"dosya1.txt"
"dosya2.jpg"
"altdizin"

Örnek

'.' ve '..' özel girdilerinin filtrelenmesi:

php<?php
  $dir = opendir('.');
  
  while (($file = readdir($dir)) !== false) {
    if ($file != '.' && $file != '..') {
      echo $file . '<br>';
    }
  }
  closedir($dir);
?>

Kodun çalıştırılmasının sonucu (sadece gerçek dosyaları ve alt dizinleri gösterir):

php'index.php'
'styles.css'
'images'

Örnek

Tüm dosyaları bir dizide toplama:

php<?php
  $files = [];
  if ($handle = opendir('/dizine/yolu')) {
    while (false !== ($entry = readdir($handle))) {
      if ($entry != '.' && $entry != '..') {
        $files[] = $entry;
      }
    }
    closedir($handle);
  }
  print_r($files);
?>

Kodun çalıştırılmasının sonucu:

phpArray
(
  [0] => "belge.pdf"
  [1] => "resim.png"
  [2] => "veri.json"
)

Ayrıca Bakınız

  • opendir fonksiyonu,
    bir dizin tanıtıcısı açar
  • scandir fonksiyonu,
    bir dizindeki tüm dosyaları bir dizi olarak döndürür