PHP强制下载中断文档

时间:2013-04-16 16:26:38

标签: php file

我在php文档中使用以下代码强制下载pdf表单,因为只有在本地计算机上提交后才能在线提交。

它下载文件确定但它会破坏它。 我再也无法打开pdf文档了。

<?php 
$file_name = 'costumer.pdf';
$file_url = 'http://www.lopezi.com/forms/' . $file_name;
header('Content-Type: application/pdf');
header("Content-Transfer-Encoding: Binary"); 
header("Content-disposition: attachment; filename=\"".$file_name."\""); 
readfile($file_url);

?>

1 个答案:

答案 0 :(得分:1)

在这种情况下,不需要Content-Transfer-Encoding标头。此外,我怀疑你输出的文件中有腐败。

将它下载到某处,打开记事本,然后将文件拖到那里。如果生成了任何PHP警告或错误,您将在顶部看到它们。

另外,尽量避免从脚本中返回更多内容的选项,导致下载问题,最终结果如下:

die(file_get_contents($file_url));

这样,您就不会通过添加更多输出来轻易地破坏代码。