Распаковка zip архива

Тема в разделе "PHP", создана пользователем rasandrey, 17 сен 2010.

Статус темы:
Закрыта.
Модераторы: latteo
  1. rasandrey

    rasandrey

    Регистр.:
    2 апр 2009
    Сообщения:
    214
    Симпатии:
    6
    Подскажите, каким образом можно распаковать zip архив на хостинге? Может есть какой-то класс уже готовый, порылся в сети - нашел только unzipper, но не совсем то, что нужно.
     
  2. ZCFD

    ZCFD

    Регистр.:
    16 янв 2008
    Сообщения:
    989
    Симпатии:
    437
    http://www.simplecoding.org/sozdanie-zip-arxivov-na-php.html
     
    rasandrey нравится это.
  3. rasandrey

    rasandrey

    Регистр.:
    2 апр 2009
    Сообщения:
    214
    Симпатии:
    6
    Спасибо, првильная ссылка только http://www.simplecoding.org/izvlechenie-fajlov-iz-zip-arxiva.html

    Добавлено через 42 минуты
    Все работает как нужно, но интересует еще один вопрос: можно ли при распаковке архива работать с каждым файлом? Объясню: у меня будет архив изображений. При распаковке каждое изображение нужно уменьшать в размере и копировать в другую папку.
     
  4. ZCFD

    ZCFD

    Регистр.:
    16 янв 2008
    Сообщения:
    989
    Симпатии:
    437
    извлекай весь архив и потом обрабатывай

    или получай индекс и работай

    ZipArchive::getFromIndex -- Returns the entry contents using its index.
    ZipArchive::getFromName -- Returns the entry contents using its name.

    имхо проще и быстрее сначала извлечь и потом обрабатывать
     
  5. rasandrey

    rasandrey

    Регистр.:
    2 апр 2009
    Сообщения:
    214
    Симпатии:
    6
    дело в том, что операция извлечения будет проводиться 1 раз в сутки. Если файл в архиве == файлу в папке(ранее извечен), то его нужно заменить. А если в архиве было всего 2 файла, то придется проводить лишние(не нужные) операции с теми, что уже были в папке и не были заменены.
     
  6. ZCFD

    ZCFD

    Регистр.:
    16 янв 2008
    Сообщения:
    989
    Симпатии:
    437
    не понял что ты написал

    1) извлек файлы во временную папку и пошел обходить файлы по циклу
    2) если файл уже обработан ( ну хоть md5 сравни с у файлов во временной папке и в основной ) пропустить, если нет - обработать и скопировать в основную папку

    ну или как я уже написал получай файл по индексу. Я разницы не вижу.
     
Статус темы:
Закрыта.