Создать zip-файл с помощью PHP-класса ZipArchive без записи файла на диск?
Я хотел бы создать zip-файл в памяти с помощью ZipArchive (или собственного класса PHP) и прочитать содержимое файла обратно клиенту. Возможно ли это? Если да, то как?
Общий объем файлов, которые я хочу заархивировать в этом приложении, составляет не более 15 МБ. Я думаю, что мы должны быть в хорошей форме с точки зрения памяти.
3 answers
Взгляните на следующую библиотеку, она позволяет создавать zip-файлы и возвращать их в виде потока: PHPClasses.org.
Есть еще одна тема, говорящая об этом: Управление архивом в памяти с помощью PHP (без создания временного файла на диске)
Крапива предложила использовать zip.lib.php от phpmyadmin. Я думаю, что это довольно надежное решение.
К ВАШЕМУ СВЕДЕНИЮ zip.lib.php больше не существует, его заменили на ZipFile.php в той же папке/библиотеках.