php 能够遍历一个文件夹下的所有文件和子文件夹的函数

function my_scandir($dir)
{
	$files=array();//定义一个数组,做为返回值
	if(is_dir($dir))//判断路径是否存在
	{
		if($handle=opendir($dir))//打开这个路径,并赋值给 handle 变量
		{
			while(($file=readdir($handle))!==false)//用 readdir 读取路径,并且绝对不能为 false
			{
				if($file!="." && $file!="..")//返回的目录名称,不能是.或..,表示还有下一层目录,递归
				{
					if(is_dir($dir."/".$file))//将得到新的目录名称,判断是否存在,
					{
					$files[$file]=my_scandir($dir."/".$file);//存在就将路径再传递给 my_scandir 函数,进行新一轮读取
					}
					else
					{
					$files[]=$dir."/".$file;//不存在,表示目录下一级没有文件了,将当前路径返回
					}
				}
			}
		closedir($handle);//关闭路径
		return $files;
		}
	}
}
print_r(my_scandir("D:\wamp\www\wampthemes"));

猜你喜欢

转载自blog.csdn.net/guo_qiangqiang/article/details/87879886