目录结构遍历函数
/**
* 目录结构遍历函数
* @params $dir 遍历目录名
* @params $level 第一层缩进层级
* @params $seprator 目录缩进符
* @example
* scandir_through('.');
*/
function scandir_through($dir,$level=1,$seprator='--'){
if(!is_dir($dir) && is_readable($dir)) return false;
foreach (scandir($dir) as $file) { //遍历目录
if($file == '.' || $file == '..') continue; //当前或父级目录跳过
if(preg_match('#/?([^/]+)$#', $file,$match)){//匹配最后一级文件/文件夹名
//输出缩进及当前文件/文件夹名
echo '|' . str_repeat($seprator, $level) . $match[1] . '<br/>';
}
if(is_dir($dir.DIRECTORY_SEPARATOR.$file)){ //如果当前为目录,继续遍历目录
scandir_through($dir.DIRECTORY_SEPARATOR.$file,$level+1,$seprator);
}
}
}
演示:PHP目录结构遍历演示
未经同意禁止转载!
转载请附带本文原文地址:PHP目录结构遍历函数,首发自 Zjmainstay学习笔记