获取指定目录下的所有文件名和路径(包括子目录)

21 篇文章 0 订阅

获取指定目录下的所有文件名和路径,同时也包括子目录在内的所有文件

	/**
	*   获取指定目录下的文件列表
	*	string $path 指定的目录,默认为当前目录
	*	string $exten 文件扩展名带前面的点(.txt),默认显示全部文件
	*	string $ifchild 是否显示子目录文件列表,默认不显示
	*/
	function openpath($path=".", $exten = '*' ,$ifchild = false){
		$array = array();
		static $file_array=array(); //存放文件名数组
		static $path_array=array(); //存放路径数组(不包括文件名)
		$path = preg_replace('/(.*)([^\/])$/', '$1$2/', $path);
		if(is_dir($path)){  //检查文件目录是否存在
			$H = @ opendir($path);
			while(false !== ($_file=readdir($H))){
				//检索目录
				if(is_dir($path.$_file) && $_file != "." && $_file!=".." && $_file!=="Thumbs.db"){
					if($ifchild){
						openpath($path.$_file, $exten ,$ifchild);
					}
				//检索文件
				}elseif(is_file($path.$_file) && $_file!="." && $_file!=".." && $_file!=="Thumbs.db"){
					//$_file = auto_charset($_file,'utf-8','gbk');
					if($exten == '*'){
						array_push($file_array, $_file);
						array_push($path_array, $path);
					} else {
						if(preg_match('/(.*)'.$exten.'/', '/'.$_file.'/')){
							array_push($file_array, $_file);
							array_push($path_array, $path);
						}
					}
				}
			}
			closedir($H);
		}
		$array['name'] = $file_array;
		$array['path'] = $path_array;
		return $array;
	}	
 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值