Подтвердить что ты не робот

Создать zip файл с использованием PHP-класса ZipArchive без записи файла на диск?

Я хотел бы создать zip файл в памяти с помощью ZipArchive (или собственного PHP-класса) и прочитать содержимое файла обратно клиенту. Это возможно? Если да, то как?

Файлы, которые я хочу занести в это приложение, составляют максимум 15 МБ. Я думаю, что мы должны быть в хорошей форме.

4b9b3361

Ответ 1

Взгляните на следующую библиотеку, она позволяет создавать zip файлы и возвращать их как поток: PHPClasses.org.

Ответ 2

Попробуйте ZipStream (ссылка на репозиторий GitHub также поддерживает установку через Composer).

От исходного веб-сайта автора (теперь мертв):

ZipStream - это библиотека для динамического потокового динамического zip файла от PHP без записи на диск вообще на сервере.

Ответ 3

Есть еще один поток, говорящий об этом: Манипулировать архивом в памяти с помощью PHP (без создания временного файла на диске)

nettle предложила использовать zip.lib.php из phpmyadmin. Я думаю, что это довольно прочное решение.

FYI zip.lib.php больше не существует, он заменяется на ZipFile.php в тех же библиотеках/папках.