Erstellen eines ZIP-Archivs aus mehreren Dateien in PHP
Frage: Wie kann ich mehrere Dateien als ZIP herunterladen? Archiv verwenden PHP?
Lösung:
Um dies zu erreichen, können Sie die ZipArchive-Klasse von PHP nutzen. So können Sie vorgehen:
ZIP-Archiv erstellen:
$files = array('readme.txt', 'test.html', 'image.gif'); $zipname = 'file.zip'; $zip = new ZipArchive; $zip->open($zipname, ZipArchive::CREATE);
Dateien hinzufügen zu die Postleitzahl Archiv:
foreach ($files as $file) { $zip->addFile($file); }
ZIP-Archiv schließen:
$zip->close();
Stream das ZIP-Archiv zum Client:
header('Content-Type: application/zip'); header('Content-disposition: attachment; filename="'.$zipname.'"'); header('Content-Length: ' . filesize($zipname)); readfile($zipname);
Die erste Zeile im Streaming-Abschnitt gibt den Inhaltstyp als ZIP-Archiv an. Die zweite Zeile weist den Browser an, eine Download-Box für den Benutzer anzuzeigen und weist den Dateinamen file.zip zu. Die dritte Zeile berechnet und legt den Content-Length-Header für ältere Browser fest, bei denen möglicherweise Probleme auftreten, ohne die Dateigröße im Voraus zu kennen.
Das obige ist der detaillierte Inhalt vonWie erstelle und lade ich mit PHP ein ZIP-Archiv mit mehreren Dateien herunter?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!