(PHP 4, PHP 5)
readdir — Czyta zawartość katalogu
Zwraca nazwy plików w katalogu, w kolejności podanej przez system plików.
Zwraca nazwę pliku w przypadku sukcesu, lub FALSE porażki.
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ł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);
}
?>