php多文件打包下载的实例代码

 更新时间:2017年07月12日 11:17:24   作者:大雨_harold  
本篇文章主要介绍了php多文件打包下载的实例代码,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

最近整理文档,搜刮出一个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);

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • 从刷票了解获得客户端IP的方法

    从刷票了解获得客户端IP的方法

    刷票,分为多种限制,注册用户,验证码,以及IP限制。这个刷票网站,而不,是这个投票网站,限制了IP。如果要突破限制,我们需要了解如何获得用户的IP。本文给大家分享从刷票了解获得客户端IP的方法,需要的朋友可以参考下
    2015-09-09
  • Laravel实现搜索的时候分页并携带参数

    Laravel实现搜索的时候分页并携带参数

    今天小编就为大家分享一篇Laravel实现搜索的时候分页并携带参数,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-10-10
  • php实现rc4加密算法代码

    php实现rc4加密算法代码

    此算法的解密方法是重新加密一次,便可还原,需要的朋友可以参考下
    2012-04-04
  • Laravel 模型关联基础教程详解

    Laravel 模型关联基础教程详解

    这篇文章主要介绍了Laravel 模型关联基础教程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-09-09
  • PHP生成静态页

    PHP生成静态页

    PHP生成静态页...
    2006-11-11
  • thinkPHP实现的省市区三级联动功能示例

    thinkPHP实现的省市区三级联动功能示例

    这篇文章主要介绍了thinkPHP实现的省市区三级联动功能,详细分析了thinkPHP实现省市区三级联动功能的详细步骤与相关操作技巧,需要的朋友可以参考下
    2017-05-05
  • thinkPHP5(TP5)实现改写跳转提示页面的方法

    thinkPHP5(TP5)实现改写跳转提示页面的方法

    这篇文章主要介绍了thinkPHP5(TP5)实现改写跳转提示页面的方法,结合实例形式分析了thinkPHP5跳转提示页面的修改步骤与相关操作注意事项,需要的朋友可以参考下
    2017-10-10
  • CodeIgniter错误mysql_connect(): No such file or directory解决方法

    CodeIgniter错误mysql_connect(): No such file or directory解决方法

    这篇文章主要介绍了CodeIgniter错误mysql_connect(): No such file or directory解决方法,需要的朋友可以参考下
    2014-09-09
  • PHP实现QQ、微信和支付宝三合一收款码实例代码

    PHP实现QQ、微信和支付宝三合一收款码实例代码

    这篇文章主要给大家介绍了关于利用PHP如何实现QQ、微信和支付宝三合一收款码的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。
    2018-02-02
  • 基于php伪静态的实现详细介绍

    基于php伪静态的实现详细介绍

    本篇文章介绍了,基于php伪静态的实现详细分析。需要的朋友参考下
    2013-04-04

最新评论