2012-04-23 85 views
5

我正在寻找使用PHP头文件从外部源强制下载文件。但是,文件类型可能是ANYTHING如何强制下载所有文件类型强制使用PHP下载未知文件类型

我希望你能理解我的问题和我想描述的内容。

+3

强制所有下载似乎是一个坏主意,我... – Jon 2012-04-23 21:35:05

+0

浏览一下'ReadFile的PHP文档()',具体将标题设置为八位字节流。 – 2012-04-23 21:36:45

+0

同意@Jon,这是一个糟糕的用户体验决定。你是否100%确定你的用户想下载文件?你是否100%确定他们想将它保存在默认的下载目录中,默认名称是? IFF你可以对这些做出肯定的回答,然后继续。 – Jeff 2012-04-23 21:37:24

回答

6

你的意思是HTTP头,你正在寻找RFC 2616,http://www.w3.org/Protocols/rfc2616/rfc2616-sec19.html“内容处置”。

发送以下标题来强制下载的所有文件和类型:

header('Content-Disposition: attachment; filename="name.ext"'); 
header('Content-Type: application/octet-stream'); // or application/force-download 

echo $the_file_content; 
exit; 
+0

如果你的意思是MIME类型,“application/octet-stream”。 – freeone3000 2012-04-23 21:37:55

+3

哦,具体。它声明你的文件由字节组成。如果你的文件不是由字节组成的,你必须找到别的东西。 – freeone3000 2012-04-23 21:41:22

+0

只有大多数? – Johnnyoh 2012-04-23 21:55:19