首页 > 资讯动态 > 资讯详情

网站建设中如何用PHP实现强制文件下载

2019-01-15 13:59:34 | 阅读:2097

网站建设中如何用PHP实现强制文件下载
浏览器在后台所做的一件事,就是尝试让一个人在浏览会话期间,所做的所有点击都能做一些事情。这意味着可以打开越来越多的文件类型,以便在Web浏览器中直接查看。大多数情况下,这是一件好事,因为点击您想要阅读的文档的链接,然后不得不等待它下载并最终在您的计算机上打开,这可能是非常令人沮丧的。当您等待此下载时,当您发现您没有正确的程序来打开文档时,这种挫折感达到了更高的水平。现在,这种情况很少发生,因为浏览器确实直接以内联方式显示文档。例如,PDF文件在默认情况下不会下载。相反,它们直接显示在Web浏览器中,类似于网页的显示方式。
如果您希望用户下载文件而不是直接在Web浏览器中查看该文件,该怎么办?如果是HTML文件或PDF文件,您不能仅仅发布到该文档的链接,因为(正如我们刚才介绍的那样)Web浏览器会自动打开这些文档并以内联方式显示它们。要将这些文件下载到一个人的计算机上,您需要使用PHP进行一些处理。
PHP允许您更改正在编写的文件的HTTP标头。此过程使您可以强制下载通常浏览器将在同一窗口中加载的文件。这非常适合您希望客户下载而不是直接从浏览器在线使用的PDF、文档文件、图像和视频等文件。您需要在存放文件的Web服务器上使用PHP,要下载的文件以及相关文件的MIME类型。本文的目的就是告诉你在网站建设开发过程中,如何用PHP实现强制文件下载。
1、如何做到这一点
将要供下载的文件上载到Web服务器。例如,假设您有一个PDF文件,您希望用户在单击某个链接时下载该文件。您将首先将该文件上载到您的网站的托管环境中。
huge_document.pdf
2、在您的Web编辑器中编辑一个新的PHP文件-为便于使用,我们建议将其命名为与下载的文件同名,但扩展名为.php,例如:
huge_document.php
3、在文档中打开PHP块:
<?php
4、在下一行中,设置HTTP标头:
header("Content-disposition: attachment; filename=huge_document.pdf");
5、然后设置文件的MIME类型:
header("Content-type: application/pdf");
6、指向要下载的文件:
readfile("huge_document.pdf");
7、然后关闭PHP块并保存文件:
?>

8、PHP文件应如下所示:

<?php
header("Content-disposition: attachment; filename=huge_document.pdf");
header("Content-type: application/pdf"); readfile("huge_document.pdf");
?>
9、链接到您的PHP文件作为下载链接从一个网页。例如:
<a href="huge_document.php">Download my huge document (PDF)</a>
10、文件中的任何位置都不应有空格或回车符(除分号之后)。空行将导致PHP默认为MIME类型 text/html 你的文件也不会下载。
立即联系咨询 比较十次,不如咨询一次。留下你的联系信息,让我们用态度与经验给您一份惊喜!
立即咨询

引航博景,专业品牌数字化服务机构,专注高端定制化产品开发与服务提供。

引航博景的前身是博信网络工作室,2006年创立于上海。2008年起,以上海引航信息技术有限公司为主体开展业务,现在上海、合肥两地设有办公室。

业务涵括系统软件开发、高端网站建设、设计交互制作、年度运维服务等,十五年来服务客户上千家并深受好评。

版权所有 © 2006-2024 上海引航信息技术有限公司沪ICP备09069965号沪公网安备31011302005006号 网站地图

专业品牌数字化服务商-引航博景正在为您服务咨询电话:400-997-5855