相柳xx 2017-02-27 01:46 采纳率: 0%
浏览 1116

PHP zipArchive使用后不弹出下载框

请求头和响应
图片说明
图片说明

将1.xlsx,2.xlsx打包压缩成压缩文件至down文件夹下,压缩成功,但下载不了
图片说明

前台代码:

$("#export").click(function(){ $.ajax({ url:'./index.php?act=export', type:'GET', success:function(data){ } }) });

后台代码:

define('TMPL_PATH','../ZipFile/');
define('DOWN_PATH',TMPL_PATH.'down');
if($_GET['act']=='export'){

$zip = new ZipArchive();
$zipName = DOWN_PATH.'/zipFile_'.date("YmdHis").'.zip';

//生成压缩文件
if ($zip->open($zipName, ZIPARCHIVE::CREATE) === TRUE) {

    //文件路径
    $arr = array(TMPL_PATH.'1.xlsx',TMPL_PATH.'2.xlsx');
    foreach($arr as $path){
        //判断文件是否存在  basename函数使压缩文件内部路径为文件名称
        if(is_file($path)){
            $zip->addFile($path,basename($path));
        }
    }
    $zip->close();
}

if(!file_exists($zipName)){
    exit("无法找到文件");
}

header("Cache-Control: public");
header("Content-Description: File Transfer");
header('Content-disposition: attachment; filename='.basename($zipName)); //文件名
header("Content-Type: application/zip"); //zip格式的
header("Content-Transfer-Encoding: binary"); //告诉浏览器,这是二进制文件
header('Content-Length: '. filesize($zipName)); //告诉浏览器,文件大小
@readfile($zipName);
exit;

}

求各位大神指教

  • 写回答

1条回答 默认 最新

  • dabocaiqq 2017-02-27 23:56
    关注
    评论

报告相同问题?

悬赏问题

  • ¥15 如何在scanpy上做差异基因和通路富集?
  • ¥20 关于#硬件工程#的问题,请各位专家解答!
  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥15 c++头文件不能识别CDialog