(PHP 5, PHP 7, PHP 8)
scandir — 列出指定路徑中的文件和目錄
$directory
, int $sorting_order
= ?, resource $context
= ?): array
返回一個(gè) array,包含有
directory
中的文件和目錄。
directory
要被瀏覽的目錄
sorting_order
默認(rèn)的排序順序是按字母升序排列。如果使用了可選參數(shù)
sorting_order
(設(shè)為
1),則排序順序是按字母降序排列。
context
context
參數(shù)的說(shuō)明見(jiàn)手冊(cè)中的
Streams API 一章。
成功則返回包含有文件名的 array,如果失敗則返回
false
。如果 directory
不是個(gè)目錄,則返回布爾值 false
并生成一條
E_WARNING
級(jí)的錯(cuò)誤。
版本 | 說(shuō)明 |
---|---|
5.4.0 |
sorting_order now accepts constants. Any
nonzero value caused descending order in previous versions.
|
示例 #1 一個(gè)簡(jiǎn)單的 scandir() 例子
<?php
$dir = '/tmp';
$files1 = scandir($dir);
$files2 = scandir($dir, 1);
print_r($files1);
print_r($files2);
?>
以上例程的輸出類似于:
Array ( [0] => . [1] => .. [2] => bar.php [3] => foo.txt [4] => somedir ) Array ( [0] => somedir [1] => foo.txt [2] => bar.php [3] => .. [4] => . )
示例 #2 scandir() 在 PHP 4 中的實(shí)現(xiàn)
<?php
$dir = "/tmp";
$dh = opendir($dir);
while (false !== ($filename = readdir($dh))) {
$files[] = $filename;
}
sort($files);
print_r($files);
rsort($files);
print_r($files);
?>
以上例程的輸出類似于:
Array ( [0] => . [1] => .. [2] => bar.php [3] => foo.txt [4] => somedir ) Array ( [0] => somedir [1] => foo.txt [2] => bar.php [3] => .. [4] => . )
如已啟用fopen 包裝器,在此函數(shù)中, URL 可作為文件名。關(guān)于如何指定文件名詳見(jiàn) fopen()。各種 wapper 的不同功能請(qǐng)參見(jiàn) 支持的協(xié)議和封裝協(xié)議,注意其用法及其可提供的預(yù)定義變量。