Руководство по PHP
Пред. |  | След.

# readdir

(PHP 3, PHP 4, PHP 5)

readdir -- Получить элемент каталога по его дескриптору

## Описание

string readdir ( resource dir_handle )

Возвращает имя следующего по порядку элемента каталога. Имена элементов возвращаются в порядке, зависящем от файловой системы.

Обратите внимание на способ проверки значения, возвращаемого функцией readdir() в приведенном ниже примере. В этом примере осуществляется проверка значения на идентичность (выражения идентичны, когда они равны и являются значениями одного типа - за более подробной информацией обратитесь к главе Операторы сравнения) значению `FALSE`, поскольку в ином случае, любой элемент каталога, чье имя может быть выражено как `FALSE`, остановит цикл (например, элемент с именем "0").

Пример 1. Вывести список всех файлов в каталоге

`<?php
// Обратите внимание, что оператор !== не существовал до версии 4.0.0-RC2
if ($handle = opendir('/path/to/files')) {
echo "Дескриптор каталога: $handle\n";
echo "Файлы:\n";
/* Именно этот способ чтения элементов каталога является правильным. */
while (false !== ($file = readdir($handle))) {
echo "$file\n";
}
/* Этот способ НЕВЕРЕН. */
while ($file = readdir($handle)) {
echo "$file\n";
}
closedir($handle);
}
?>`

Обратите внимание, что функция readdir() также возвращает элементы с именами . и ... Если вы не хотите получать эти значения, просто отбрасывайте их:

Пример 2. Получить список файлов в текущем каталоге и отбросить элементы с именами . и ..

`<?php if ($handle = opendir('.')) { while (false !== ($file = readdir($handle))) { if ($file != "." && $file != "..") { echo "$file\n"; } } closedir($handle); } ?>`

См.также описания функций is_dir() и glob().

Пред. | Начало | След.
opendir | Уровень выше | rewinddir