Forum und email
scandir

scandir

(PHP 5)

scandir -- Wypisze wszystkie pliki i katalogi z określonej lokalizacji

Opis

array scandir ( string katalog [, int sorting_order [, resource context]] )

Zwraca tablicę z wszystkimi plikami i katalogami znajdującymi się w katalog.

Parametry

katalog

Katalog, który ma być przeskanowany.

sorting_order

Domyślnie, kolejność w zwróconej tablicy jest alfabetyczna w porządku rosnącym. Jeżeli opcjonalny parametr sorting_order jest użyty (ustawiony na 1), wówczas kolejność jest alfabetyczna w porządku malejącym.

context

Po opis parametru context , odsyłamy do sekcji strumienii manuala.

Zwracane wartości

Zwraca tablicę z nazwami plików w przypadku powodzenia lub FALSE w przypadku niepowodzenia. Jeżeli katalog nie jest w rzeczywistości katalogiem, wtedy zwracany jest FALSE , oraz generowany jest błąd poziomu E_WARNING.

Przykłady

Przykład 1. Prosty przykład użycia scandir()e

<?php
$dir    
= '/tmp';
$files1 = scandir($dir);
$files2 = scandir($dir, 1);

print_r($files1);
print_r($files2);
?>

Powyższy przykład wyświetli coś podobnego do:

Array
(
    [0] => .
    [1] => ..
    [2] => bar.php
    [3] => foo.txt
    [4] => jakiśkatalog
)
Array
(
    [0] => jakiśkatalog
    [1] => foo.txt
    [2] => bar.php
    [3] => ..
    [4] => .
)

Przykład 2. Alternatywa dlascandir()w PHP 4

<?php
$dir
= "/tmp";
$dh  = opendir($dir);
while (
false !== ($filename = readdir($dh))) {
    
$files[] = $filename;
}

sort($files);

print_r($files);

rsort($files);

print_r($files);

?>

Powyższy przykład wyświetli coś podobnego do:

Array
(
    [0] => .
    [1] => ..
    [2] => bar.php
    [3] => foo.txt
    [4] => jakiśkatalog
)
Array
(
    [0] => jakiśkatalog
    [1] => foo.txt
    [2] => bar.php
    [3] => ..
    [4] => .
)

Notatki

Podpowiedź: Jeśli włączona jest dyrektywa konfiguracyjna fopen wrappers, możliwe jest podanie jako nazwy pliku adresu URL. Zobacz opis funkcji fopen() aby dowiedzieć się jak przekazać nazwę pliku, oraz fopen wrappers aby uzyskać listę obsługiwanych protokołów.