-1

我正在尝试使用 PHP 下载文件。现在文件已下载,但未获得原始格式(缺少扩展名)。使用原始文件扩展名重命名后,我可以使用下载的文件。我正在使用以下代码

header("Expires: 0");  
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");  
header("Cache-Control: no-store, no-cache, must-revalidate");  
header("Cache-Control: post-check=0, pre-check=0", false);  
header("Pragma: no-cache");  
header("Content-type: application/".$result['ext']);  
header('Content-length: '.filesize($file));  
header('Content-disposition: attachment; filename='.$result['file_name']); 
readfile($file);  
exit; 

在哪里

$result['ext']="rar",
$file="file path to the uploaded folder".
4

1 回答 1

2

我很确定您必须将文件名中的扩展名作为Content-disposition标题的一部分发送到浏览器。

对于您的代码,您必须更改:

header('Content-disposition: attachment; filename='.$result['file_name']); 

至:

$filename = $result['file_name'] . '.' . $result['ext'];
header('Content-disposition: attachment; filename=' . $filename); 
于 2012-06-21T16:05:58.560 回答