Maison > développement back-end > tutoriel php > Comment créer et télécharger une archive ZIP multi-fichiers en PHP ?

Comment créer et télécharger une archive ZIP multi-fichiers en PHP ?

DDD
Libérer: 2024-12-23 19:42:15
original
637 Les gens l'ont consulté

How to Create and Download a Multi-File ZIP Archive in PHP?

Création d'archives ZIP avec plusieurs fichiers en PHP

Pour télécharger plusieurs fichiers sous la forme d'une seule archive ZIP à l'aide de PHP, nous pouvons exploiter la classe ZipArchive .

Création du ZIP Archive :

$files = array('readme.txt', 'test.html', 'image.gif');
$zipname = 'file.zip';
$zip = new ZipArchive;
$zip->open($zipname, ZipArchive::CREATE);
foreach ($files as $file) {
  $zip->addFile($file);
}
$zip->close();
Copier après la connexion

Ce code crée une archive ZIP nommée « file.zip » et y ajoute les fichiers spécifiés.

Diffusion de l'archive ZIP pour téléchargement :

header('Content-Type: application/zip');
header('Content-disposition: attachment; filename='.$zipname);
header('Content-Length: ' . filesize($zipname));
readfile($zipname);
Copier après la connexion

Ces en-têtes préparent le navigateur à afficher une invite de téléchargement et à définir le nom et la taille du fichier appropriés. En lisant le fichier d'archive ZIP et en diffusant son contenu, le navigateur peut le télécharger.

Notes supplémentaires :

  • L'en-tête 'Content-disposition' force le navigateur pour présenter une boîte de téléchargement à l'utilisateur.
  • L'en-tête 'Content-Length' est facultatif, mais il garantit la compatibilité avec les anciens navigateurs.
  • Cette approche permet la création dynamique d'archives ZIP contenant plusieurs fichiers et leur téléchargement.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal