PHP遞歸獲取目錄內(nèi)所有文件的實(shí)現(xiàn)方法
如下所示:
/**
* 遞歸獲取文件夾內(nèi)所有文件
* 返回一個(gè)TREE結(jié)構(gòu)的文件系統(tǒng)
* @param string $dir
* @param array $filter
* @return array $files
*/
function scan_dir($dir, $filter = array()){
if(!is_dir($dir))return false;
$files = array_diff(scandir($dir), array('.', '..'));
if(is_array($files)){
foreach($files as $key=>$value){
if(is_dir($dir . '/' . $value)){
$files[$value] = scan_dir($dir . '/' . $value, $filter);
unset($files[$key]);
continue;
}
$pathinfo = pathinfo($dir . '/' . $value);
$extension = array_key_exists('extension', $pathinfo) ? $pathinfo['extension'] : '';
if(!empty($filter) && !in_array($extension, $filter)){
unset($files[$key]);
}
}
}
unset($key, $value);
return $files;
}
以上就是小編為大家?guī)?lái)的PHP遞歸獲取目錄內(nèi)所有文件的實(shí)現(xiàn)方法全部?jī)?nèi)容了,希望大家多多支持腳本之家~
相關(guān)文章
laravel利用中間件做防非法登錄和權(quán)限控制示例
今天小編就為大家分享一篇laravel利用中間件做防非法登錄和權(quán)限控制示例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-10-10
ThinkPHP中Common/common.php文件常用函數(shù)功能分析
這篇文章主要介紹了ThinkPHP中Common/common.php文件常用函數(shù)功能,通過(guò)注釋的形式詳細(xì)分析了C方法、tag方法、B方法及autoload方法的功能與代碼原理,需要的朋友可以參考下2016-05-05
PHP 面向?qū)ο蟪绦蛟O(shè)計(jì)(oop)學(xué)習(xí)筆記 (二) - 靜態(tài)變量的屬性和方法及延遲綁定
靜態(tài)變量的類型關(guān)鍵字是static。本文主要是學(xué)習(xí)php中靜態(tài)屬性和靜態(tài)方法的使用方法和基本的示例以及延遲綁定2014-06-06
PhpStorm 如何優(yōu)雅的調(diào)試Hyperf的方法步驟
這篇文章主要介紹了PhpStorm 如何優(yōu)雅的調(diào)試Hyperf的方法步驟,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-11-11
百度地圖經(jīng)緯度轉(zhuǎn)換到騰訊地圖/Google 對(duì)應(yīng)的經(jīng)緯度
本篇文章主要給大家介紹百度地圖經(jīng)緯度轉(zhuǎn)換到騰訊地圖/Google 對(duì)應(yīng)的經(jīng)緯度.需要的朋友可以參考下2015-08-08

