2. <?php
Header('Content-type: application/octet-stream');
//之后的任何输出都是下载
//不要用Windows自带记事本编辑UTF-8的PHP文件,否则由于BOM,下载功能失效
3. 在该例子中,使用了Header()输出HTTP头信息Content-type(内容的MIME类型)。
决定浏览器直接显示或提示下载的并非网页的文件后缀,而是MIME类型(如text/html这样的)。
如果把zip的Content-type设为text/plain,浏览器就会认为它是txt而直接显示,虽然网址的文件后缀是.zip。
所以你只要发下载类型的Content-type,PHP输出的内容也可以被下载。
同样的,PHP输出的内容也可以当做图片显示,只要发image/jpeg,如验证码就如此。
4. 你可以百度一下MIME类型大全,给文件合适的MIME类型,如zip是application/zip。如果找不到合适的,通用的下载类型是application/octet-stream
另外,你可以利用以下这个特性使php输出的文件有合适的文件名:
/wap/read.php/abcd.mp3?id=bbs目标另存它就是abcd.mp3(中文要Urlencode())。大部分电脑浏览器和UC还支持一种HTTP头比设置下载的文件名,由于Q浏冒浏不支持,我忘了,你可以百度一下。