YesYo.com MintState Forums
뒤로    YesYo.com MintState BBS > Tech > PHP
검색
멤버이름    오토
비밀번호 
 

PHP 디렉토리 정보를 출력(디렉토리 깊이, 예외 파일, 디렉토리 설정)

페이지 정보

작성자 MintState 댓글 0건 조회 6,384회 작성일 18-04-03 11:51

본문

PHP 디렉토리 정보를 출력(디렉토리 깊이, 예외 파일, 디렉토리 설정)

function read_path($path, $depth = 1, $exclude = '') {
	if($depth == 0) {
		return;
	}
	if (!$exclude || !is_array($exclude)) $exclude = array();
	$last_letter  = $path[strlen($path)-1];
	$path  = ($last_letter == '\' || $last_letter == '/') ? $path : $path.DIRECTORY_SEPARATOR;
	$files  = array('files'=>array(), 'dirs'=>array());
	if ($handle = opendir($path)) {
		while (false !== ($file = readdir($handle))) {
			if ($file == '.' || $file == '..') {
				continue;
			}
			if(is_array($exclude) && !in_array($file, $exclude)){
				$file  = $path.$file;
				if (is_dir($file)) {
					$directory_path = $file.DIRECTORY_SEPARATOR;
					$files['dirs'][$directory_path]  = NULL;
				} elseif (is_file($file)) {
					$files['files'][]  = $file;
				}
			}
		}
		closedir($handle);
	}
	$done = [$path=>$files];
	foreach ($done[$path]['dirs'] as $key=>$value) {
		$done[$path]['dirs'][$key] = read_path($key, $depth-1, $exclude);
	}
	return $done[$path];
}

$exclude_file = array("80c53aa1_19359835.jpg","thumb","0002");
$reads = read_path(BASE_DIR.'/data/test', 2, $exclude_file);

댓글목록

등록된 댓글이 없습니다.

Total 165건 7 페이지
게시물 검색
모바일 버전으로 보기
CopyRight ©2004 - 2024, YesYo.com MintState. ™