Учебник РНР
НазадВперёд

readdir

(PHP 3, PHP 4)

readdir - читает вхождение из дескриптора директории.

Описание

string readdir (resource dir_handle)

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

Обратите внимание на способ, которым return -значение функции readdir() проверяется в следующем примере. Мы явным образом проверяем, идентично ли return-значение (равно и того же типа, что и  --  см. Операции сравнения) FALSE, поскольку иначе любое вхождение директории, имя которого вычисляется в FALSE, остановит цикл.

Пример 1. Список всех файлов в директории

// Обратите внимание, что !== не существовала до 4.0.0-RC2
<?php
if ($handle = opendir('/path/to/files')) {
    echo "Directory handle: $handle\n";
    echo "Files:\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().


НазадОглавлениеВперёд
opendirВверхrewinddir