Funcția readdir
Funcția readdir citește conținutul unui director deschis cu opendir. La fiecare apel returnează numele următorului fișier sau false dacă nu mai există fișiere. Funcția păstrează un indicator intern de poziție în director.
Sintaxă
readdir(resource $dir_handle): string|false
Exemplu
Citirea tuturor fișierelor dintr-un director:
<?php
$dir = opendir('/path/to/directory');
while (($file = readdir($dir)) !== false) {
echo $file . '<br>';
}
closedir($dir);
?>
Rezultatul executării codului (exemplu de afișare):
"file1.txt"
"file2.jpg"
"subdirectory"
Exemplu
Filtrarea intrărilor speciale '.' și '..':
<?php
$dir = opendir('.');
while (($file = readdir($dir)) !== false) {
if ($file != '.' && $file != '..') {
echo $file . '<br>';
}
}
closedir($dir);
?>
Rezultatul executării codului (afișează doar fișiere și subdirectoare reale):
'index.php'
'styles.css'
'images'
Exemplu
Colectarea tuturor fișierelor într-un array:
<?php
$files = [];
if ($handle = opendir('/path/to/dir')) {
while (false !== ($entry = readdir($handle))) {
if ($entry != '.' && $entry != '..') {
$files[] = $entry;
}
}
closedir($handle);
}
print_r($files);
?>
Rezultatul executării codului:
Array
(
[0] => "document.pdf"
[1] => "image.png"
[2] => "data.json"
)