点击一个按钮,实现将多张图片打包下载,需要有提示那种,就是提示将打包文件放到什么目录的那种,求指导
点击一个按钮,实现将多张图片打包下载,需要有提示那种,就是提示将打包文件放到什么目录的那种,求指导
——解决方案——————–
打包參考這裡:http://justcoding.iteye.com/blog/660812
下载提示那种。
<br /><?php<br />$file = 'test.zip'; <br />if(file_exists($file)){ <br /> header('content-type:application/octet-stream'); <br /> header('content-disposition:attachment; filename='.basename($file)); <br /> header('content-length:'.filesize($file)); <br /> readfile($file); <br />} <br />?><br />
——解决方案——————–
例
$zipname = 'test.zip';<br />$filelist = array_slice(glob('images/*'), 0, 10);//待压缩文件列表<br />$zip = new ZipArchive;<br />$zip->open($zipname, ZIPARCHIVE::CREATE <br><font color='#FF8000'>------解决方案--------------------</font><br> ZIPARCHIVE::OVERWRITE);<br /> <br />foreach($filelist as $fn){<br /> $zip->addFile($fn);<br />}<br />$zip->close();
——解决方案——————–
整合下这两个就可以了,经测试妥妥的。
然后就拿版主和二楼的结合写了个方法:
<br />function zipAndDownload($zipFileName,$zipDir){<br /> if(file_exists($zipFileName)){<br /> unlink($zipFileName);<br /> $zipFile = new ZipArchive();<br /> $fileList = array_slice(glob($zipDir) , 0 ); //待压缩文件<mark>@本文来源gaodaimacom搞#代%码@网-</mark><strong>搞代gaodaima码</strong>列表<br /> $zipFile -> open($zipFileName , ZipArchive::CREATE <br><font color='#FF8000'>------解决方案--------------------</font><br> ZipArchive::OVERWRITE);<br /> foreach ($fileList as $files){<br /> $zipFile -> addFile($files);<br /> }<br /> $zipFile -> close();<br /> if(file_exists($zipFileName)){ <br /> header('content-type:application/octet-stream'); <br /> header('content-disposition:attachment; filename='.basename($zipFileName)); <br /> header('content-length:'.filesize($zipFileName)); <br /> readfile($zipFileName); <br /> } <br /> }<br /> }<br />