本篇文章主要介紹php實現多檔案打包下載的方法,感興趣的朋友參考下,希望對大家有所協助。
需要同時下載多個檔案時,大部分瀏覽器都不支援多檔案同時下載,可以採用JavaScript指令碼動態產生多個連結,但是需要使用者多次點擊下載對話方塊,使用者體驗不好,並且有些瀏覽器還不相容。此時多檔案打包下載幫你解決這個問題。
$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);