(PHP 5)
scandir — Wypisze wszystkie pliki i katalogi z określonej lokalizacji
$katalog
[, int $sorting_order
= 0
[, resource $context
]] )
Zwraca tablicę z wszystkimi plikami i katalogami znajdującymi się w
katalog
.
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 ustawiony (nie na wartość 0),
wówczas kolejność jest alfabetyczna w porządku malejącym.
context
Po opis parametru context
,
odsyłamy do sekcji strumienii
podręcznika PHP.
Zwraca tablicę z nazwami plików w przypadku powodzenia lub FALSE
w przypadku
błędu. Jeżeli katalog
nie jest w rzeczywistości katalogiem, wtedy
zwracany jest FALSE
, oraz generowane jest ostrzeżenie
E_WARNING
.
Przykład #1 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 dla scandir() 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] => . )
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.