Пропустить "корневой" каталог при извлечении с использованием класса ZipArchive? - PullRequest
2 голосов
/ 02 февраля 2012

Я пытаюсь использовать класс ZipArchive , чтобы распаковать содержимое архива, содержащего GitHub-репозиторий.

Когда вы загружаете архив из GitHub, он содержит папкукорень почтового индекса с именем что-то вроде «project-2302392-20230» ... Тогда внутри этой папки находится фактическое содержимое хранилища.

Возможно ли извлечь все внутри этой папки проекта, не извлекая саму папку?

1 Ответ

0 голосов
/ 18 февраля 2014

Вот один из способов выяснить имя уникального верхнего каталога zip-архива github.

  1. Используйте getArchiveComment () для получения комментария ziparchive.
  2. используйте strpos дляуберите все символы, кроме первых 7, а также добавьте имя пользователя git и имя репо, например, '/USER-REPO-'.substr($comment, 0, 7);

Вы также можете использоватьregex, scandir и ряд других способов.

...