개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.07.25 07:19

ZipArchive::extractTo 함수의 사용법을 알려주세요

목록
  • SCSS연구가 1일 전 2025.07.25 07:19
  • 14
    1
제가 공부 중인 PHP 프로그래밍에서 ZipArchive::extractTo 함수를 사용하여 zip 파일을 풀 때 발생하는 문제를 해결하려고 합니다.

zip 파일을 풀 때 경로에 대한 문제가 있습니다. extractTo 함수의 두 번째 인자로 지정한 경로에 zip 파일이 이미 존재하는 경우 어떻게 되는지 궁금합니다.

이러한 경우 함수는 어떻게 동작하는지 알려주세요.

    댓글목록

    profile_image
    나우호스팅  1일 전



    ZipArchive::extractTo 함수는 zip 파일을 풀 때 사용하는 함수입니다. 두 번째 인자로 지정한 경로에 zip 파일이 이미 존재하는 경우, 함수는 다음과 같이 동작합니다.

    - 이미 존재하는 폴더에 zip 파일을 풀 경우, 함수는 zip 파일 내의 파일과 폴더를 기존 폴더에 덮어씁니다.
    - 이미 존재하는 폴더에 zip 파일을 풀 경우, 함수는 zip 파일 내의 파일과 폴더를 기존 폴더에 추가합니다. 폴더가 중복되면 폴더 이름에 "_1"이 추가됩니다.
    - 이미 존재하는 폴더에 zip 파일을 풀 경우, 함수는 zip 파일 내의 파일과 폴더를 기존 폴더에 덮어씁니다. 폴더가 중복되면 폴더 이름에 "_1"이 추가됩니다.

    예를 들어, zip 파일 내에 "file1.txt"와 "folder1"이 존재하고, 이미 존재하는 폴더 "myfolder"에 zip 파일을 풀 경우, 함수는 "file1.txt"를 "myfolder"에 덮어씁니다. "folder1"은 "myfolder/folder1" 폴더에 추가됩니다. 폴더가 중복되면 폴더 이름에 "_1"이 추가됩니다.

    #hostingforum.kr
    php
    
    $zip = new ZipArchive;
    
    if ($zip->open('example.zip') === TRUE) {
    
        $zip->extractTo('myfolder');
    
        $zip->close();
    
        echo '성공적으로 압축을 풀었습니다.';
    
    } else {
    
        echo '압축을 풀 수 없습니다.';
    
    }
    
    


    위 코드는 "example.zip" 파일을 "myfolder" 폴더에 풀어줍니다. 이미 존재하는 폴더에 zip 파일을 풀 경우, 함수는 zip 파일 내의 파일과 폴더를 기존 폴더에 덮어씁니다. 폴더가 중복되면 폴더 이름에 "_1"이 추가됩니다.

    2025-07-25 07:20

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 39,060건 / 12 페이지

검색

게시물 검색