php获取文件夹列表或文件列表

作者:Liaodeity - 2015年03月24日

    这是一个获取文件夹或文件列表的方法,可以点号的文件夹也可以正常的获取,因为有些获取文件夹列表和文件列表都不是很完美,这里我对该方法进行了优化,经过测试没有什么问题。

    如发现有问题欢迎交流

/**
 * [getFile 获取文件夹列表或文件列表]
 * @param  string  $path   [需要获取的列表地址]
 * @param  boolean $is_dir [获取文件夹列表还是文件列表,TRUE为文件夹,FALSE为文件,默认为TRUE]
 * @return [array] $result [以数组方式返回列表数据]
 */
function getFile($path = '.', $is_dir = TRUE) {
	$current_dir = opendir($path);    //opendir()返回一个目录句柄,失败返回false
	while(($file = readdir($current_dir)) !== false) {    //readdir()返回打开目录句柄中的一个条目
	    $sub_dir = $path . DIRECTORY_SEPARATOR . $file;    //构建子目录路径
	    if($file == '.' || $file == '..') {
	        continue;
	    }
	    if($is_dir){
	        if(is_dir($sub_dir)) {    //如果是目录,进行赋值
	            $result[] = $file;
	        }	
	    }else{
	        if(is_file($sub_dir)) {    //如果是文件,进行赋值
	            $result[] = $file;
	        }	
	    }
	}
	return $result;
}
$re = getFile('.');/*获取文件夹列表*/
var_dump($re);
echo '<br/>';
$re = getFile('.',FALSE);/*获取文件列表*/
var_dump($re);


本文作者: Liaodeity

本文链接: https://www.jianbaizhan.com/article/167

版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 3.0 许可协议。转载请注明出处!


 请勿发布不友善或者负能量的内容。审查将对发布广告等违规信息进行处罚!