O branch main
não está estável. Por favor, veja os lançamentos para uma versão estável.
Um downloader de arquivo zip de streaming rápido e simples para PHP. Usar esta biblioteca evitará que você tenha que gravar o Zip no disco. Você pode enviá-lo diretamente ao usuário, o que é muito mais rápido. Ele pode funcionar com buckets S3 ou qualquer fluxo PSR7.
Consulte o arquivo LICENSE para obter informações sobre licenciamento e garantia.
Basta adicionar uma dependência de maennchen/zipstream-php ao arquivo composer.json
do seu projeto se você usar o Composer para gerenciar as dependências do seu projeto. Use o seguinte comando para adicionar o pacote às dependências do seu projeto:
composer require maennchen/zipstream-php
Para obter instruções detalhadas, verifique a documentação.
// 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.1
ZipStreamOptionMethod
foi substituída pela enumeração ZipStreamCompressionMethod
.@internal
e não deve ser usada externamente. Se você estiver usando recursos internos para estender esta biblioteca, abra um problema para que uma interface limpa possa ser adicionada e publicada. As classes e enumerações disponíveis externamente são:ZipStreamCompressionMethod
ZipStreamException*
ZipStreamZipStream
ZipStreamOptionArchive
foi substituída em favor de argumentos nomeados no construtor ZipStreamZipStream
.largeFileSize
e largeFileMethod
foram removidas. Se você quiser compressionMethods
diferentes com base no tamanho do arquivo, você mesmo terá que implementá-los.httpHeaderCallback
alterou o tipo de callable
para Closure
.zeroHeader
foi substituída pela opção defaultEnableZeroHeader
e pode ser substituída para cada arquivo. Seu valor padrão mudou de false
para true
.statFiles
foi removida porque a biblioteca não verifica mais o tamanho dos arquivos dessa forma.deflateLevel
foi substituída pela opção defaultDeflateLevel
e pode ser substituída para cada arquivo.name
) do construtor ZipStreamZipStream
foi substituído pelo argumento nomeado outputName
.outputName
estiver vazio. Se você não deseja enviar cabeçalhos HTTP automaticamente, defina sendHttpHeaders
como false
.ZipStreamOptionFile
foi substituída em favor de argumentos nomeados nas funções ZipStreamZipStream->addFile*
.method
de opção de arquivo foi renomeado para compressionMethod
.time
foi renomeada para lastModificationDateTime
.size
foi renomeada para 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 é um projeto colaborativo. Por favor, dê uma olhada no arquivo .github/CONTRIBUTING.md.
As versões são suportadas de acordo com a tabela abaixo.
Não abra nenhuma solicitação pull que contradiga o status de suporte da versão atual.
Cuidado: Sempre verifique o README
na main
para obter informações atualizadas.
Versão | Novos recursos | Correções de bugs | Segurança |
---|---|---|---|
3 | |||
2 | |||
1 | |||
0 |
Esta biblioteca se alinha com o suporte principal do PHP. Novos recursos e correções de bugs serão direcionados apenas às versões do PHP de acordo com seu status atual.
Veja: https://www.php.net/supported-versions.php