一、使用函数:
is_dir(): 函数检查指定的文件是否是目录,返回布尔值
scandir(directory): 函数返回指定目录中的文件和目录的数组
二、遍历思路:
(1)首先接收一个目录名称,然后用scandir扫描,其中会有两个额外的目录是“."和”..“需要去掉
(2)然后遍历扫描后的每个文件是否为目录文件,如果是则在回调到第一步扫描里面的文件
三、实现代码:
$dir="think"; function scanDirList($dir){ $scan = scandir($dir); //扫描文件夹 foreach ($scan as $key => $value) { if($value != '.' && $value != '..'){ //去除掉多余的'.'和'..'两个文件 $path = $dir.'/'.$value; //拼接当前父级目录,使最终输出完整目录 if(is_dir($path)){ //判断扫描后的文件是否为目录,如果是则递归继续扫描,否则输出当前完整路径的文件名称 scanDirList($path); }else{ echo "<p>$path</p>"; } } } } scanDirList($dir);