2015-07-21 72 views
0

我真的生气后,花了四个小时没有结果。我想提供一个zip文件供下载。不通过链接,但与readfile(也许有另一种方式?)无论我已经尝试过,下载后的zip是空的。报价zip在php下载

$file = 'Passiv1.zip'; 
header('Content-Type: application/zip'); 
header('Content-Disposition: attachment; filename="'.$file.'"'); 
header('Content-Length: '.filesize($file)); 
readfile($file); 

任何人都可以帮我吗?

+0

检查是否存在Passiv1.zip像 – donald123

+0

@ donald123还要检查你不需要文件的完整路径,即,如果它不在运行的php代码所在的文件夹中 – RiggsFolly

回答

0

对我来说,以下工作:

header("Content-Disposition: attachment; filename=\"".$file."\""); 
header("Cache-Control: no-cache, must-revalidate"); // HTTP/1.1 
header("Expires: Sat, 26 Jul 1997 05:00:00 GMT"); // Date in the past 

此外,还要确保你没有其他问题,如Passiv1.zip不可读取。

尝试测试与这样的:

if (is_readable($file)){ 
    echo "OK!"; 
} else { 
    echo "NOT OK!"; 
} 
0

问题解决了:没有内容应头前发送,甚至没有空格