main ветка не стабильна. Пожалуйста, ознакомьтесь с выпусками стабильной версии.
Быстрый и простой загрузчик потоковых zip-файлов для PHP. Использование этой библиотеки избавит вас от необходимости записывать Zip на диск. Вы можете напрямую отправить его пользователю, что намного быстрее. Он может работать с сегментами S3 или любым потоком PSR7.
Информацию о лицензировании и гарантии см. в файле ЛИЦЕНЗИИ.
Просто добавьте зависимость от maennchen/zipstream-php в файл composer.json вашего проекта.json, если вы используете Composer для управления зависимостями вашего проекта. Используйте следующую команду, чтобы добавить пакет в зависимости вашего проекта:
composer require maennchen/zipstream-phpПодробные инструкции можно найти в документации.
// Autoload the dependencies
require ' vendor/autoload.php ' ;
// create a new zipstream object
$ zip = new ZipStream ZipStream (
outputName: ' example.zip ' ,
// enable output of HTTP headers
sendHttpHeaders: true ,
);
// create a file named 'hello.txt'
$ zip -> addFile (
fileName: ' hello.txt ' ,
data: ' This is the contents of hello.txt ' ,
);
// add a file named 'some_image.jpg' from a local file 'path/to/image.jpg'
$ zip -> addFileFromPath (
fileName: ' some_image.jpg ' ,
path: ' path/to/image.jpg ' ,
);
// finish the zip stream
$ zip -> finish ();8.1ZipStreamOptionMethod был заменен перечислением ZipStreamCompressionMethod .@internal и не должны использоваться извне. Если вы используете внутренние ресурсы для расширения этой библиотеки, откройте проблему, чтобы можно было добавить и опубликовать чистый интерфейс. Доступные извне классы и перечисления:ZipStreamCompressionMethodZipStreamException*ZipStreamZipStreamZipStreamOptionArchive был заменен именованными аргументами в конструкторе ZipStreamZipStream .largeFileSize и largeFileMethod были удалены. Если вам нужны разные compressionMethods в зависимости от размера файла, вам придется реализовать это самостоятельно.httpHeaderCallback изменила тип с callable на Closure .zeroHeader была заменена опцией defaultEnableZeroHeader и может быть переопределена для каждого файла. Его значение по умолчанию изменилось с false на true .statFiles была удалена, поскольку библиотека больше не проверяет файлы таким образом.deflateLevel была заменена опцией defaultDeflateLevel и может быть переопределена для каждого файла.name ) конструктора ZipStreamZipStream был заменен именованным аргументом outputName .outputName пусто. Если вы не хотите автоматически отправлять заголовки http, установите для sendHttpHeaders значение false .ZipStreamOptionFile был заменен именованными аргументами в функциях ZipStreamZipStream->addFile* .method параметра файла был переименован в compressionMethod .time был переименован в lastModificationDateTime .size параметра файла был переименован в maxSize . https://github.com/maennchen/ZipStream-PHP/tree/2.0.0#upgrade-to-version-200
https://github.com/maennchen/ZipStream-PHP/tree/2.0.0#upgrade-to-version-100
ZipStream-PHP — совместный проект. Пожалуйста, взгляните на файл .github/CONTRIBUTING.md.
Поддерживаются версии согласно таблице ниже.
Пожалуйста, не открывайте запросы на включение, противоречащие текущему статусу поддержки версии.
Осторожно: всегда проверяйте README на main для получения актуальной информации.
| Версия | Новые возможности | Исправления ошибок | Безопасность |
|---|---|---|---|
| 3 | |||
| 2 | |||
| 1 | |||
| 0 |
Эта библиотека соответствует основной поддержке PHP. Новые функции и исправления будут нацелены только на версии PHP в соответствии с их текущим статусом.
См.: https://www.php.net/supported-versions.php.