Heim  >  Artikel  >  Backend-Entwicklung  >  So laden Sie mehrere Dateien in PHP herunter

So laden Sie mehrere Dateien in PHP herunter

巴扎黑
巴扎黑Original
2018-05-15 10:51:007040Durchsuche

In diesem Artikel wird hauptsächlich der Beispielcode für das Packen und Herunterladen mehrerer PHP-Dateien vorgestellt. Jetzt werde ich ihn mit Ihnen teilen und als Referenz verwenden. Folgen wir dem Editor und werfen wir einen Blick darauf.

Ich habe kürzlich die Dokumente sortiert und einen Beispielcode für das PHP-Multifile-Paketieren und -Downloaden gefunden. Ich habe ihn ein wenig sortiert und zum Teilen vereinfacht.

Wenn mehrere Dateien gleichzeitig heruntergeladen werden müssen, unterstützen die meisten Browser das gleichzeitige Herunterladen mehrerer Dateien nicht. JavaScript-Skripte können zum dynamischen Generieren mehrerer Links verwendet werden, der Benutzer muss dies jedoch tun Klicken Sie mehrmals auf das Download-Dialogfeld. Die Erfahrung ist nicht gut und einige Browser sind noch nicht kompatibel. Derzeit können mehrere Dateipaket-Downloads Ihnen bei der Lösung dieses Problems helfen.

$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);

Das obige ist der detaillierte Inhalt vonSo laden Sie mehrere Dateien in PHP herunter. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn