2012-02-02 2 views
2

ZipArchive 클래스를 사용하여 GitHub 저장소가 포함 된 zip의 내용을 압축하려고합니다.ZipArchive 클래스를 사용하여 추출 할 때 "루트"디렉토리를 건너 뛰시겠습니까?

GitHub에서 zip을 다운로드하면 zip의 루트에 "project-2302392-20230"과 같은 이름의 폴더가 있습니다. 그런 다음 해당 폴더 내에 저장소의 실제 내용이 있습니다.

폴더 자체를 추출하지 않고 해당 프로젝트 폴더 내의 모든 항목을 추출 할 수 있습니까?

답변

0

다음은 github zip 아카이브의 고유 한 최상위 디렉토리의 이름을 파악하는 한 가지 방법입니다.

  1. ziparchive 코멘트를 얻기 위해 getArchiveComment()를 사용하십시오.
  2. 처음 7 개를 제외한 모든 문자를 제거하고 '/USER-REPO-'.substr($comment, 0, 7)'과 같이 git 사용자 이름과 저장소 이름을 추가하려면 strpos를 사용하십시오.

또한 regex, scandir 및 기타 여러 가지 방법을 사용할 수 있습니다.

관련 문제