PHP使用opendir和readdir函數(shù)讀取指定目錄下所有文件
一:opendir(打開目錄句柄)
在php中讀取指定目錄下的文件主要用到了opendir和readdir函數(shù)
1:語法
opendir(path,context);
2:參數(shù)說明
參數(shù) | 描述 |
---|---|
path | 必需。規(guī)定要打開的目錄路徑。 |
context | 可選。規(guī)定目錄句柄的環(huán)境。context 是可修改目錄流的行為的一套選項。 |
3:返回值
成功則返回目錄句柄資源。失敗則返回 FALSE。如果路徑不是合法目錄,或者由于許可限制或文件系統(tǒng)錯誤導(dǎo)致的目錄不能打開,則拋出 E_WARNING 級別的錯誤。您可以通過在函數(shù)名稱前添加 '@' 來隱藏 opendir() 的錯誤輸出。
二:readdir(回目錄中下一個文件的文件名)
1:語法
readdir(dir_handle);
2:參數(shù)說明
參數(shù) | 描述 |
---|---|
dir_handle | 可選。指定之前由 opendir() 打開的目錄句柄資源。如果該參數(shù)未指定,則使用最后一個由 opendir() 打開的鏈接。 |
3:返回值
成功則返回文件名,失敗則返回 FALSE。
三:php實現(xiàn)讀取指定目錄下所有文件
/** * @param string $path [要讀取的文件目錄] */ public function traverse($path = '.') { $currentDir = opendir($path); //opendir()返回一個目錄句柄,失敗返回false while(($file = readdir($currentDir)) !== false) { //readdir()返回打開目錄句柄中的一個條目 $subDir = $path . DIRECTORY_SEPARATOR . $file; //構(gòu)建子目錄路徑 if($file == '.' || $file == '..') { continue; } else if(is_dir($subDir)) { //如果是目錄,進行遞歸 $this->traverse($subDir); } else { //如果是文件,調(diào)用clasbackFun方法(參數(shù):文件路徑,文件名) $this->callbackFun($path,$file); } } }
以上就是PHP使用opendir和readdir函數(shù)讀取指定目錄下所有文件的詳細內(nèi)容,更多關(guān)于PHP opendir readdir文件讀取的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
php無法連接mysql數(shù)據(jù)庫的正確解決方法
這篇文章主要為大家詳細介紹了php無法連接mysql數(shù)據(jù)庫的正確解決方法,感興趣的小伙伴們可以參考一下2016-07-07提交表單后 PHP獲取提交內(nèi)容的實現(xiàn)方法
下面小編就為大家?guī)硪黄峤槐韱魏?PHP獲取提交內(nèi)容的實現(xiàn)方法。小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-05-05laravel使用Redis實現(xiàn)網(wǎng)站緩存讀取的方法詳解
這篇文章主要給大家介紹了關(guān)于laravel使用Redis實現(xiàn)網(wǎng)站緩存讀取的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。2018-03-03解密ThinkPHP3.1.2版本之獨立分組功能應(yīng)用
分組功能可以解決中大型項目情況中MVC分層文件過多導(dǎo)致不易管理的問題。這篇文章主要介紹了ThinkPHP3.1.2獨立分組功能,需要的朋友可以參考下2014-06-06