어떤 폴더내의 폴더 목록을 가져올 필요가 생겼다.
그 폴더 목록을 가져와서 Tree형대로 표시할려고 한다.
그래서 다음과 같은 함수를 만들어 처리했다.
function getDir($path){ $arrData = array(); $results = scandir($path); foreach ($results as $result) { if ($result === '.' or $result === '..') continue; if (is_dir($path . '/' . $result)) { //디렉토리라면 $data = array(); $data["text"] = iconv("euc-kr","utf-8",$result); //한글일경우 json 에러때문에 $data["id"] = iconv("euc-kr","utf-8", $path . '/' . $result); $data["cls"] = "folder"; $sub_folders = getDir($path . '/' . $result); //폴더이므로 그 안에 폴더 목록을 가져오기 위해.. if(count($sub_folders)){ $data["leaf"] = false; $data["root"] = $sub_folders; }else{ $data["leaf"] = true; } $arrData[] = $data; } } return $arrData; }
참고로 위 소스는 가져온 값을 json의 형태로 보낸다.
또한 해당 폴더의 서브폴더 목록을 가져오기 위해 재귀 호출을 하였다.
'PHP' 카테고리의 다른 글
PHP 5.5.x 버전부터 mysql 관련 함수가 deprecate 되었습니다. (0) | 2014.11.14 |
---|---|
특정 경로의 파일 정보 가져오기 (0) | 2014.11.13 |
파일의 확장자 분리 (0) | 2014.10.24 |
PDO를 사용할때 mysql_num_rows 같은 함수가 없다...ㅜㅜ (0) | 2014.09.17 |
템플릿언더바(Template Underscore) (0) | 2014.06.09 |