АКЦИЯ: бесплатные месячные курсы по созданию сайтов
на выбор: верстка, JavaScript, PHP, Python или фреймворки. Сегодня последний день для записи! Жми!
302 of 410 menu
Новый формат обучения! Репетиторство по программированию. Есть еще 3 свободных места! Жми для подробностей.

Функция readdir

Функция readdir читает содержимое директории, открытой с помощью opendir. При каждом вызове возвращает имя следующего файла или false, если файлов больше нет. Функция сохраняет внутренний указатель позиции в директории.

Синтаксис

readdir(resource $dir_handle): string|false

Пример

Чтение всех файлов в директории:

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

Результат выполнения кода (пример вывода):

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

Пример

Фильтрация специальных записей '.' и '..':

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

Результат выполнения кода (выводит только реальные файлы и поддиректории):

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

Пример

Сбор всех файлов в массив:

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

Результат выполнения кода:

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

Смотрите также

  • функцию opendir,
    которая открывает дескриптор директории
  • функцию scandir,
    которая возвращает все файлы директории в виде массива
byenru