<?php
function my_scandir($dir)
{
$files = array();
if ( $handle = opendir($dir) ) {
while ( ($file = readdir($handle)) !== false ) {
if ( $file != ".." && $file != "." ) {
if ( is_dir($dir . "/" . $file) ) {
$files[$file] = my_scandir($dir . "/" . $file);
}else {
$files[] = $file;
}
}
}
closedir($handle);
return $files;
}
}
dump(my_scandir("D:\wwwroot"));
function dump($vars){
$content = "\n" . htmlspecialchars(print_r($vars, true)) . "\n\n";
echo "{$content}";
return;
} opendir -- 打開目錄句柄 說明 resource opendir ( string path) 返回一個目錄句柄,,可以在之后用在 closedir(),,readdir() 和 rewinddir() 調(diào)用中。 如果 path 不是一個合法的目錄或者因為權限限制或文件系統(tǒng)錯誤而不能打開目錄,,opendir() 返回 FALSE 并產(chǎn)生一個 E_WARNING 級別的 PHP 錯誤信息,??梢栽?opendir() 前面加上“@”符號來抑制錯誤信息的輸出。 readdir -- 從目錄句柄中讀取條目 說明 string readdir ( resource dir_handle) 返回目錄中下一個文件的文件名,。文件名以在文件系統(tǒng)中的排序返回。 請留意下面例子中檢查 readdir() 返回值的風格,。我們明確地測試返回值是否全等于(值和類型都相同 - 更多信息參見比較運算符)FALSE,,否則任何目錄項的名稱求值為 FALSE 的都會導致循環(huán)停止(例如一個目錄名為“0”)。 is_dir -- 判斷給定文件名是否是一個目錄 說明 bool is_dir ( string filename) 如果文件名存在并且為目錄則返回 TRUE,。如果 filename 是一個相對路徑,,則按照當前工作目錄檢查其相對路徑。 注: 本函數(shù)的結果會被緩存,。詳細信息參見 clearstatcache(),。 注: 本函數(shù)不能作用于遠程文件,被檢查的文件必須通過服務器的文件系統(tǒng)訪問,。 scandir -- 列出指定路徑中的文件和目錄 說明 array scandir ( string directory [, int sorting_order]) 返回一個 array,,包含有 directory 中的文件和目錄。如果 directory 不是一個目錄,,則返回布爾值 FALSE,,并產(chǎn)生一條 E_WARNING 級別的錯誤。
默認情況下,,返回值是按照字母順序升序排列的,。如果使用了可選參數(shù) sorting_order(設為 1),則按照字母順序降序排列,。 以上就介紹了(最明了)寫一個函數(shù),,能夠遍歷一個文件夾下的所有文件和子文件夾。,,包括了方面的內(nèi)容,,希望對PHP教程有興趣的朋友有所幫助。 文章來源:https://www./faq/332512.html
|