Funkcija readdir

Funkcija readdir skaito katalogo, atidaryto naudojant opendir, turinį. Kiekvieną kartą iškviečiant grąžina kito failo pavadinimą arba false, jei failų daugiau nėra. Funkcija išsaugo vidinį pozicijos rodyklę kataloge.

Sintaksė

phpreaddir(resource $dir_handle): string|false

Pavyzdys

Visų failų kataloge skaitymas:

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

Kodo vykdymo rezultatas (išvedimo pavyzdys):

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

Pavyzdys

Specialiųjų įrašų '.' ir '..' filtravimas:

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

Kodo vykdymo rezultatas (rodo tik realius failus ir pakatalogius):

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

Pavyzdys

Visų failų rinkimas į masyvą:

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

Kodo vykdymo rezultatas:

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

Taip pat žiūrėkite

  • funkciją opendir,
    kuri atidaro katalogo deskriptorių
  • funkciją scandir,
    kuri grąžina visus katalogo failus masyvo pavidalu