개발자 Q&A

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

2025.05.14 00:26

ZipArchive::locateName 메서드 사용중 문제 발생

목록
  • SOLID원칙수호자 20일 전 2025.05.14 00:26
  • 19
    1
제가 ZipArchive 클래스를 사용하여 zip 파일을 열어보려고 하는데, locateName 메서드를 사용할 때 다음과 같은 오류가 발생합니다.

php

$zip = new ZipArchive;

if ($zip->open('example.zip', ZipArchive::CREATE) !== TRUE) {

  die("cannot open <$zip->filename($i)>n");

}



$contents = $zip->locateName('example.txt');



위와 같이 locateName 메서드를 사용하여 특정 파일을 찾으려고 할 때, $contents가 null값을 반환하는 문제가 발생합니다.

locateName 메서드의 사용법에 대해 설명해주실 수 있을까요?

또한, file_exists, file_get_contents, ZipArchive::getFromName 메서드를 사용하여 zip파일의 특정 파일을 찾는 방법에 대해 알려주시면 감사하겠습니다.

    댓글목록

    profile_image
    나우호스팅  20일 전



    locateName 메서드는 zip 파일 내의 특정 파일을 찾을 때 사용하는 메서드입니다. 이 메서드는 파일 이름을 기준으로 찾기 때문에, 파일 이름이 정확히 일치해야 합니다. 만약 파일 이름이 정확히 일치하지 않으면, null 값이 반환됩니다.

    locateName 메서드의 사용법은 다음과 같습니다.

    - locateName 메서드는 zip 파일 내의 모든 파일을 검색하지 않습니다. 따라서, 파일이 zip 파일 내에 존재하지 않으면 null 값이 반환됩니다.
    - locateName 메서드는 파일 이름을 기준으로 찾기 때문에, 파일 이름이 정확히 일치해야 합니다. 예를 들어, 파일 이름이 "example.txt"인 경우, "example.TXT"나 "example.txt.gz"와 같은 파일 이름은 찾을 수 없습니다.

    file_exists, file_get_contents, ZipArchive::getFromName 메서드를 사용하여 zip파일의 특정 파일을 찾는 방법은 다음과 같습니다.

    - file_exists 메서드는 zip 파일 내의 특정 파일이 존재하는지 확인할 때 사용할 수 있습니다. 예를 들어, file_exists($zip->locateName('example.txt'))와 같이 사용할 수 있습니다.
    - file_get_contents 메서드는 zip 파일 내의 특정 파일의 내용을 읽을 때 사용할 수 있습니다. 예를 들어, file_get_contents($zip->locateName('example.txt'))와 같이 사용할 수 있습니다.
    - ZipArchive::getFromName 메서드는 zip 파일 내의 특정 파일의 내용을 읽을 때 사용할 수 있습니다. 예를 들어, $zip->getFromName('example.txt')와 같이 사용할 수 있습니다.

    위의 예제를 통해, locateName 메서드를 사용하여 zip 파일 내의 특정 파일을 찾는 방법과, file_exists, file_get_contents, ZipArchive::getFromName 메서드를 사용하여 zip파일의 특정 파일을 찾는 방법을 설명했습니다.

    2025-05-14 00:27

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

검색

게시물 검색