scandir

(PHP 5)

scandir -- 列出指定路徑中的檔案和目錄

說明

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

返回一個 array,包括有 directory 中的檔案和目錄。

參數

directory

要被瀏覽的目錄

sorting_order

預設的排序順序是按字母升冪排序。若果使用了可選參數 sorting_order(設為 1),則排序順序是按字母降冪排序。

context

context 參數的說明見手冊中的 Streams API 一章。

返回值

成功則返回包括有檔案名的 array,若果失敗則返回 FALSE。若果 directory 不是個目錄,則返回布林值 FALSE 並建立一條 E_WARNING 級的錯誤。

範例

例子 1. 一個簡單的 scandir() 例子

<?php
$dir    
'/tmp';
$files1 scandir($dir);
$files2 scandir($dir1);

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 中的實現

<?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 wrappers」已經被啟動,則在本函數中可以把 URL 作為檔案名來使用。請參閱 fopen() 函數來取得怎樣指定檔案名的詳細訊息以及支援 URL 封裝協定的清單:附錄 M