php讀取目錄及子目錄下所有文件名的方法
本文實例講述了php讀取目錄及子目錄下所有文件名的方法,分享給大家供大家參考。具體實現(xiàn)方法如下:
一般來說php中讀取目錄下的文件名的方式確實不少,最簡單的是scandir,具體代碼如下:
$file=scandir($dir);
print_r($file);
稍微復雜點的,來自于php手冊:
// Open a known directory, and proceed to read its contents
if (is_dir($dir)) {
if ($dh = opendir($dir)) {
while (($file = readdir($dh)) !== false) {
echo "filename: $file : filetype: " . filetype($dir . $file) . "\n";
} closedir($dh);
}
}
這些都只能讀取當前指定目錄下的文件,對子目錄中的文件則無法讀取。原來自己寫過一個循環(huán)刪除所有目錄的一段代碼,需要逐個子目錄刪除所有文件,包括多層。但是只需要讀出文件名,稍微復雜點,網(wǎng)上找到一個能用,原始代碼有錯誤提示,改了一下引用&$data的地方,如下所示:
if(is_dir($path)){
$dp=dir($path);
while($file=$dp->read()){
if($file!='.'&& $file!='..'){
searchDir($path.'/'.$file,$data);
}
}
$dp->close();
}
if(is_file($path)){
$data[]=$path;
}
}
function getDir($dir){
$data=array();
searchDir($dir,$data);
return $data;
}
print_r(getDir('.'));
希望本文所述對大家的PHP程序設計有所幫助。
相關文章
網(wǎng)頁上facebook分享功能具體實現(xiàn)
本文為大家介紹下網(wǎng)頁上facebook分享功能的具體實現(xiàn),詳細代碼請看本文2014-01-01
php fputcsv命令 寫csv文件遇到的小問題(多維數(shù)組連接符)
fputcsv() 將一行(用 fields數(shù)組傳遞)格式化為 CSV 格式并寫入由 handle指定的文件2011-05-05
php防止偽造數(shù)據(jù)從地址欄URL提交的方法
針對偽造的數(shù)據(jù)從URL提交的情況,首先是檢查前一頁來源,這個方法只能防止手動在瀏覽器地址欄上輸入的URL,目前覺得還是用POST的方法傳遞重要數(shù)據(jù)比較可靠2014-08-08
PHP在終端中實現(xiàn)進度條來處理數(shù)據(jù)的示例詳解
在PHP中,有時候你需要在終端中處理大量數(shù)據(jù)或執(zhí)行長時間運行的任務,同時希望能夠?qū)崟r跟蹤任務的進度,在 PHP 中,有時候你需要在終端中處理大量數(shù)據(jù)或執(zhí)行長時間運行的任務,同時希望能夠?qū)崟r跟蹤任務的進度,需要的朋友可以參考下2023-10-10

