Другие библиотеки кроме ZipArchive для создания архивов pkzip на PHP? - PullRequest
1 голос
/ 11 января 2011

Я нахожусь в процессе написания некоторых функций для создания epub с использованием php5. В настоящее время я пытаюсь использовать ZipArchive, но столкнулся с парой неприятностей с ним. Прежде всего, нет никакой функциональности, чтобы установить уровень сжатия. Во-вторых, ZipArchive::addFile(), кажется, молча терпит неудачу и создает поврежденный архив всякий раз, когда я его использую. Вместо этого я использовал file_get_contents() + ZipArchive::addFromString(), но предпочел бы просто использовать документированную функцию для добавления файлов.

Я не буду публиковать примеры кода, если кто-то действительно не захочет помочь мне отладить эту проблему, но мне интересно, есть ли другие библиотеки для создания zip (pkzip) архивов в PHP, которые вы бы порекомендовали. До сих пор я видел PclZip , чей сайт, кажется, не загружается, но не более того. Я также рассмотрел использование exec() + zip (команда unix). Этот код будет работать только на этом конкретном Linux-боксе, поэтому переносимость не является проблемой.

Заранее спасибо за любые предложения!

Ответы [ 2 ]

1 голос
/ 11 января 2011

PCLZip является довольно хорошей альтернативой, с zlib как единственной зависимостью, если вы можете получить доступ к сайту.Это, вероятно, временно, это было определенно доступно между Рождеством и Новым годом.

Это также довольно эффективно, даже по сравнению с ZipArchive

EDIT

Выскажем, что у вас были проблемы с методом addFile () в ZipArchive.Это в среде Windows или на вашем сервере Linux?Я знаю, что в Win32 было несколько выпусков с ошибками библиотеки php_zip, которые могут создать эту проблему, хотя последние версии кажутся нормальными, и я не сталкивался с такой же проблемой на других платформах (даже в версии WIN64).

1 голос
/ 11 января 2011

Я бы использовал exec () и команду Unix.Простой способ решения проблемы - утилиты Unix всегда будут на шаг или два впереди своих аналогов PEAR.

...