php 文件打包下载 亲测成功

磊落不羁 by:磊落不羁 分类:常用函数 时间:2年前 阅读:50 评论:0

今天在php7.4 中 需要做一个php打包下载的功能。 文件夹里面都是图片个格式

在网上寻找了N久 终于找到一个可靠的代码来支持我想要的功能。

$zip = new \ZipArchive;
//压缩文件名
$filename = './storage/zip/'.$dwid.'.zip';
//新建zip压缩包
$zip->open($filename,\ZIPARCHIVE::OVERWRITE | \ZIPARCHIVE::CREATE);

//循环压缩文件
foreach($files as $key => $value){

    $zip->addFile($value,basename($value));

}

//打包zip
$zip->close();
header("Cache-Control:public");
header("Content-Description: File Transfer");
header("Content-disposition: attachment; filename=".basename($filename));//文件名
//header("Content-Type: application/force-download");
header("Content-Type:application/zip"); //格式为zip
header("Content-Transfer-Encoding:binary"); //这是二进制文件
header("Content-Length:".filesize($filename)); //文件大小

@readfile($filename);
@unlink($filename);

这里面的$files 是 文件地址的数组   可以通过数据库读取拼接 也可以通过文件夹读取   这段代码可以改写程函数,目前我看 这段代码比之前找到的那些类 等功能要好用很多。

非特殊说明,本文版权归原作者所有,转载请注明出处

本文地址:http://php.liulei.com.cn/?type=acticle&id=38

评论列表

发表评论

  • 昵称(必填)
  • 邮箱
  • 网址

TOP