Maison > développement back-end > tutoriel php > Comment créer et télécharger une archive ZIP de plusieurs fichiers à l'aide de PHP ?

Comment créer et télécharger une archive ZIP de plusieurs fichiers à l'aide de PHP ?

Patricia Arquette
Libérer: 2024-12-14 17:14:12
original
662 Les gens l'ont consulté

How to Create and Download a ZIP Archive of Multiple Files Using PHP?

Création d'une archive ZIP à partir de plusieurs fichiers en PHP

Question : Comment puis-je télécharger plusieurs fichiers au format ZIP archiver en utilisant PHP ?

Solution :

Pour y parvenir, vous pouvez exploiter la classe ZipArchive de PHP. Voici comment procéder :

  1. Créer une archive ZIP :

    $files = array('readme.txt', 'test.html', 'image.gif');
    $zipname = 'file.zip';
    $zip = new ZipArchive;
    $zip->open($zipname, ZipArchive::CREATE);
    Copier après la connexion
  2. Ajouter des fichiers à le ZIP Archive :

    foreach ($files as $file) {
      $zip->addFile($file);
    }
    Copier après la connexion
  3. Fermer l'archive ZIP :

    $zip->close();
    Copier après la connexion
  4. Diffuser l'archive ZIP vers le Client :

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

La première ligne de la section streaming spécifie le type de contenu sous forme d'archive ZIP. La deuxième ligne demande au navigateur d'afficher une boîte de téléchargement pour l'utilisateur et attribue le nom de fichier file.zip. La troisième ligne calcule et définit l'en-tête Content-Length pour les navigateurs plus anciens qui peuvent rencontrer des problèmes sans connaître à l'avance la taille du fichier.

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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal