La branche main
n'est pas stable. Veuillez consulter les versions pour une version stable.
Un téléchargeur de fichiers zip en streaming simple et rapide pour PHP. L'utilisation de cette bibliothèque vous évitera d'avoir à écrire le Zip sur le disque. Vous pouvez l’envoyer directement à l’utilisateur, ce qui est beaucoup plus rapide. Il peut fonctionner avec les compartiments S3 ou n’importe quel flux PSR7.
Veuillez consulter le fichier LICENSE pour obtenir des informations sur les licences et la garantie.
Ajoutez simplement une dépendance sur maennchen/zipstream-php au fichier composer.json
de votre projet si vous utilisez Composer pour gérer les dépendances de votre projet. Utilisez la commande suivante pour ajouter le package aux dépendances de votre projet :
composer require maennchen/zipstream-php
Pour des instructions détaillées, veuillez consulter la documentation.
// 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
a été remplacée par l'énumération ZipStreamCompressionMethod
.@internal
et ne doivent pas être utilisées de l'extérieur. Si vous utilisez des ressources internes pour étendre cette bibliothèque, veuillez ouvrir un ticket afin qu'une interface propre puisse être ajoutée et publiée. Les classes et énumérations disponibles en externe sont :ZipStreamCompressionMethod
ZipStreamException*
ZipStreamZipStream
ZipStreamOptionArchive
a été remplacée au profit d'arguments nommés dans le constructeur ZipStreamZipStream
.largeFileSize
& largeFileMethod
ont été supprimées. Si vous souhaitez compressionMethods
différentes en fonction de la taille du fichier, vous devrez l'implémenter vous-même.httpHeaderCallback
a modifié le type de callable
en Closure
.zeroHeader
a été remplacée par l'option defaultEnableZeroHeader
et peut être remplacée pour chaque fichier. Sa valeur par défaut est passée de false
à true
.statFiles
a été supprimée car la bibliothèque ne vérifie plus la taille des fichiers de cette façon.deflateLevel
a été remplacée par l'option defaultDeflateLevel
et peut être remplacée pour chaque fichier.name
) du constructeur ZipStreamZipStream
a été remplacé par l'argument nommé outputName
.outputName
est vide. Si vous ne souhaitez pas envoyer automatiquement les en-têtes http, définissez sendHttpHeaders
sur false
.ZipStreamOptionFile
a été remplacée au profit d'arguments nommés dans les fonctions ZipStreamZipStream->addFile*
.method
d'option de fichier a été renommée compressionMethod
.time
a été renommée lastModificationDateTime
.size
de l'option de fichier a été renommée 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 est un projet collaboratif. Veuillez jeter un œil au fichier .github/CONTRIBUTING.md.
Les versions sont prises en charge selon le tableau ci-dessous.
Veuillez ne pas ouvrir de demandes d'extraction contredisant l'état de prise en charge de la version actuelle.
Attention : vérifiez toujours le README
sur main
pour obtenir des informations à jour.
Version | Nouvelles fonctionnalités | Corrections de bugs | Sécurité |
---|---|---|---|
3 | |||
2 | |||
1 | |||
0 |
Cette bibliothèque s'aligne sur le support principal de PHP. Les nouvelles fonctionnalités et corrections de bugs cibleront uniquement les versions PHP en fonction de leur état actuel.
Voir : https://www.php.net/supported-versions.php