Maison >développement back-end >tutoriel php >Comment empaqueter et télécharger plusieurs fichiers en PHP

Comment empaqueter et télécharger plusieurs fichiers en PHP

墨辰丷
墨辰丷original
2018-05-19 14:05:391759parcourir

Cet article présente principalement la méthode de packaging et de téléchargement de plusieurs fichiers en PHP. Les amis intéressés peuvent s'y référer. J'espère qu'il sera utile à tout le monde.

Lorsque plusieurs fichiers doivent être téléchargés en même temps, la plupart des navigateurs ne prennent pas en charge le téléchargement simultané de plusieurs fichiers. Les scripts JavaScript peuvent être utilisés pour générer dynamiquement plusieurs liens, mais cela nécessite que l'utilisateur clique sur la boîte de dialogue de téléchargement. box plusieurs fois, ce qui entraîne une mauvaise expérience utilisateur et certains navigateurs ne sont pas encore compatibles. À l’heure actuelle, plusieurs téléchargements de packages de fichiers peuvent vous aider à résoudre ce problème.

$filename = "test.zip";
$datalist=array('./pubfile/1.jpg','./pubfile/2.jpg');
if(!file_exists($filename)){
 $zip = new ZipArchive();
 if ($zip->open($filename, ZipArchive::CREATE)==TRUE) {
  foreach( $datalist as $val){
   if(file_exists($val)){
    $zip->addFile( $val, basename($val));
   }
  }
  $zip->close();
 }
}
if(!file_exists($filename)){
 exit("无法找到文件");
}
header("Cache-Control: public");
header("Content-Description: File Transfer");
header('Content-disposition: attachment; filename='.basename($filename)); //文件名
header("Content-Type: application/zip"); //zip格式的
header("Content-Transfer-Encoding: binary"); //告诉浏览器,这是二进制文件
header('Content-Length: '. filesize($filename)); //告诉浏览器,文件大小
@readfile($filename);

Ce qui précède est l'intégralité du contenu de cet article, j'espère qu'il sera utile à l'étude de chacun.

Recommandations associées :

Fonction de téléchargement de fichiers PHP - Fichiers multiplesTéléchargement

phpFichiers multiplesFonction de compression

AjaxuploadFichiers multiplesTé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!

Déclaration:
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