개발자 Q&A

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

2025.03.18 16:13

ZipArchive::setMtimeName 관련 질문 내용입니다.

  • 보안전문가 1일 전 2025.03.18 16:13
  • 6
    1
ZipArchive::setMtimeName 사용법에 대한 질문

저는 php에서 ZipArchive::setMtimeName 함수를 사용하여 zip파일의 시간을 수정하고자 합니다.
setMtimeName 함수의 파라미터는 무엇이며, 정확한 사용법을 알려주시겠어요?

위 함수를 사용할 때, 시간의 형식은 어떻게 지정해야 하며, 예제 코드를 알려주시겠어요?

아래와 같은 코드를 사용하였는데, 시간이 제대로 수정되지 않습니다.
php

$zip = new ZipArchive;

$zip->open('example.zip', ZipArchive::CREATE);

$zip->setMtimeName('example.txt', time());

$zip->close();


위 코드에서 시간이 제대로 수정되지 않는 이유를 알려주시겠어요?

위 함수를 사용하여 시간을 수정할 때, 다른 옵션을 사용해야 하는지 알려주시겠어요?

    댓글목록

    profile_image
    나우호스팅  1일 전



    ZipArchive::setMtimeName 함수의 파라미터는 두 가지입니다. 첫 번째 파라미터는 zip파일 내의 파일 이름, 두 번째 파라미터는 시간입니다.

    시간의 형식은 Unix 시간 형식으로 지정해야 합니다. Unix 시간 형식은 1970년 1월 1일 00:00:00부터 현재까지의 초 수를 나타냅니다.

    위 코드에서 시간이 제대로 수정되지 않는 이유는 setMtimeName 함수를 사용하여 시간을 수정하는 것이 아니라, setExternalAttributesName 함수를 사용하여 시간을 수정해야 한다는 것입니다.

    위 함수를 사용하여 시간을 수정할 때, 다른 옵션을 사용해야 하는 것은 setMtimeName 함수를 사용하여 시간을 수정하는 것이 아니라, setExternalAttributesName 함수를 사용하여 시간을 수정해야 한다는 것입니다.

    예제 코드는 다음과 같습니다.

    #hostingforum.kr
    php
    
    $zip = new ZipArchive;
    
    $zip->open('example.zip', ZipArchive::CREATE);
    
    $zip->setExternalAttributesName('example.txt', time(), ZipArchive::EMUTIME);
    
    $zip->close();
    
    


    위 코드는 example.zip 파일 내의 example.txt 파일의 시간을 현재 시간으로 수정합니다.

    2025-03-18 16:14

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

검색

게시물 검색