Funkcia readdir

Funkcia readdir číta obsah adresára otvoreného pomocou opendir. Pri každom volaní vráti názov nasledujúceho súboru alebo false, ak už nie sú žiadne ďalšie súbory. Funkcia zachováva interný ukazovateľ pozície v adresári.

Syntax

phpreaddir(resource $dir_handle): string|false

Príklad

Čítanie všetkých súborov v adresári:

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

Výsledok vykonania kódu (príklad výstupu):

php"file1.txt"
"file2.jpg"
"subdirectory"

Príklad

Filtrovanie špeciálnych záznamov '.' a '..':

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

Výsledok vykonania kódu (zobrazí len reálne súbory a podadresáre):

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

Príklad

Zozbieranie všetkých súborov do poľa:

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

Výsledok vykonania kódu:

phpArray
(
  [0] => "document.pdf"
  [1] => "image.png"
  [2] => "data.json"
)

Pozrite tiež

  • funkciu opendir,
    ktorá otvára popisovač adresára
  • funkciu scandir,
    ktorá vráti všetky súbory adresára vo forme poľa