最近整理文檔,搜刮出一個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);
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持。
【網站聲明】本站除付費源碼經過測試外,其他素材未做測試,不保證完整性,網站上部分源碼僅限學習交流,請勿用于商業用途。如損害你的權益請聯系客服QQ:2655101040 給予處理,謝謝支持。