十年網(wǎng)站開發(fā)經(jīng)驗(yàn) + 多家企業(yè)客戶 + 靠譜的建站團(tuán)隊(duì)
量身定制 + 運(yùn)營(yíng)維護(hù)+專業(yè)推廣+無憂售后,網(wǎng)站問題一站解決
這篇文章主要為大家展示了“php多文件打包下載的示例分析”,內(nèi)容簡(jiǎn)而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領(lǐng)大家一起研究并學(xué)習(xí)一下“php多文件打包下載的示例分析”這篇文章吧。

需要同時(shí)下載多個(gè)文件時(shí),大部分瀏覽器都不支持多文件同時(shí)下載,可以采用JavaScript腳本動(dòng)態(tài)生成多個(gè)鏈接,但是需要用戶多次點(diǎn)擊下載對(duì)話框,用戶體驗(yàn)不好,并且有些瀏覽器還不兼容。此時(shí)多文件打包下載幫你解決這個(gè)問題。
$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"); //告訴瀏覽器,這是二進(jìn)制文件
header('Content-Length: '. filesize($filename)); //告訴瀏覽器,文件大小
@readfile($filename);以上是“php多文件打包下載的示例分析”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!