<?php

function fileCopy($odir,$ndir) {


    if(filetype($odir) === 'dir') {

        clearstatcache();


        if($fp = @opendir($odir)) {

            while(false !== ($ftmp = readdir($fp))){

                if(($ftmp !== ".") && ($ftmp !== "..") && ($ftmp !== "")) {

                    if(filetype($odir.'/'.$ftmp) === 'dir') {

                        clearstatcache();


                        @mkdir($ndir.'/'.$ftmp);

                        //echo ($ndir.'/'.$ftmp."<br />\n");

                        set_time_limit(0);

                        fileCopy($odir.'/'.$ftmp,$ndir.'/'.$ftmp);

                    } else {

                        copy($odir.'/'.$ftmp,$ndir.'/'.$ftmp);

                    }

                }

            }

        }

        if(is_resource($fp)){

            closedir($fp);

        }

    } else {

        //echo $ndir."<br />\n";

        copy($odir,$ndir);

    }


}


// 복사하고자 하는 폴더를 지정하면 복사본 폴더에 복사가 됩니다.

fileCopy('원본 폴더','복사본 폴더');

?>


응용해서 예시로 하나 생성 해보겠습니다.

<?php

$folder = "new_folder";


$folder_dir = "/home/www/";

$basic_dir = $folder_dir.'basic'; // 복사 할 디렉토리 경로

$new_folder_dir = $folder_dir.$folder; // 새로생성할 디렉토리 경로


// 해당 디렉토리가 없다면 실행

if(!is_dir($new_folder_dir)){

    // new_folder 라는 새로운 디렉토리 생성

    @mkdir($new_folder_dir, 0777);

    @chmod($new_folder_dir, 0777);


    // 복사하고자 하는 폴더를 지정하면 복사본 폴더에 복사가 됩니다.

    fileCopy($basic_dir,$new_folder_dir);

}

?>

추천 0 비추천 0
  • 페이스북으로 보내기
  • 트위터로 보내기
  • 구글플러스로 보내기
  • 밴드 보내기
  • 블로그 보내기
  • 폴라 보내기
  • 카카오스토리 보내기
  • 텔레그램 보내기
  • 텀블러 보내기
댓글 0

PHP

RSS
번호 제목 글쓴이 날짜 추천 비추천
상단으로