实例代码:
public function download($dataurl,$savename) { $datalist = [ root_path.'/public/introduce/110.docx', root_path.'/public/upfile/110.zip' ];// print_r($datalist);die; $filename刑事侦查技术 = root_path.'\public\/'.$savename.'.zip'; if(file_exists($filename)){ unlink($filename); } $zip = new \ziparchive(); if ($zip->简单有open($filename,\ziparchive::create)!== true){ exit('无法打开文件,或者文件创建失败'); } foreach ($dataurl as $index => $item) { if (directory_parator=='\\'){ $item = str_replace('/',directory_parator,$item); $filename = str_replace('/',directory_parator,$filename); }// var_dump($item);// var_dump(file_exists($item));die; if (file_exists($item)){ $zip->addfile($item,baname($item)); } } $zip->clo(); if(!file_exists($filename)){ exit("无法找到文件"); //即使创建,仍有可能失败 } he工伤申请ader('content-type: application/zip'); header('content-disposition: attachment; filename='.baname($filename)); header('content-length: ' . filesize($filename)); 中学校园 @readfile($filename); @unlink ( $filename );}
注意:里面的路径全部用绝对路径,不然会找不到文件
附赠其他操作:
解压缩zip文件
public function unzip_file($file, $dir){ // 实例化对象 $zip = new ziparchive() ; //微博网名打开zip文档,如果打开失败返回提示信息 if ($zip->open($file) !== true) { die ("could not open archive"); } //将压缩文件解压到指定的目录下 $zip->extractto($dir); //关闭zip文档 $zip->clo(); }
获取解压文件目录
public function loopfun($dir) { $handle = opendir($dir."."); //定义用于存储文件名的数组 $array_file = array(); while (fal !== ($file = readdir($handle))) { if ($file != "." && $file != "..") { $array_file[] = $dir.'/'.$file; //输出文件名 } } clodir($handle); return $array_file; //print_r($array_file); }
大家可以在本地测试下,感谢大家的学习和对www.887551.com的支持。
本文发布于:2023-04-08 06:03:27,感谢您对本站的认可!
本文链接:https://www.wtabcd.cn/fanwen/zuowen/c154721e49dcae35606fe415837bb5bc.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文word下载地址:php ZipArchive实现多文件打包下载实例.doc
本文 PDF 下载地址:php ZipArchive实现多文件打包下载实例.pdf
留言与评论(共有 0 条评论) |