Funkcje katalogów
PHP Manual

readdir

(PHP 4, PHP 5)

readdirCzyta zawartość katalogu

Opis

string readdir ([ zasób $uchwyt_katalogu ] )

Zwraca nazwę kolejnego pliku z katalogu. Nazwy plików są zwracane w kolejności posortowanej przez system plików.

Parametry

uchwyt_katalogu

Uchwyt katalogu (zasób) otwarty wcześniej za pomocą opendir(). Jeśli uchwyt katalogu nie jest podany, przyjmowany jest ostatni wskaźnik katalogu utworzony przez opendir().

Zwracane wartości

Zwraca nazwę pliku w przypadku powodzenia lub FALSE w przypadku niepowodzenia.

Ostrzeżenie

Ta funkcja może zwrócić Boolean FALSE, ale może też zwrócić wartość innego typu niż Boolean, która oznacza wartość FALSE, takie jak 0 lub "". Aby uzyskać więcej informacji proszę zapoznać się z rozdziałem Typy logiczne. Można używać operatora === do testowania zwracanych wartości przez tę funkcję.

Przykłady

Przykład #1 Lista wszystkich plików w katalogu

Sposób w jaki zwrócona przez readdir() wartość powinna być sprawdzona, obrazuje poniższy przykład. Należy sprawdzić czy zwrócona wartość jest równa (jest tego samego typu -- zobacz również Comparison Operators) FALSE. W przeciwnym razie plik o nazwie FALSE (jak również "0") znajdujący się w czytanym katalogu zatrzymałby pętle.

<?php
//  !== nie istniał w wersji wcześniejszej niż 4.0.0-RC2

if ($handle opendir('/path/to/files')) {
    echo 
"Directory handle: $handle\n";
    echo 
"Files:\n";

    
/* To jest poprawna metoda  */
    
while (false !== ($file readdir($handle))) {
        echo 
"$file\n";
    }

    
/* To jest ZŁA metoda */
    
while ($file readdir($handle)) {
        echo 
"$file\n";
    }

    
closedir($handle);
}
?>

Przykład #2 Lista wszystkich plików w wskazanym katalogu oprócz . i ..

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

Zobacz też:


Funkcje katalogów
PHP Manual