使用PHP强制下载文件
提供网络浏览器可以打开的文件时,它们通常是在浏览器中打开而不是下载。这可能很烦人,尤其是在涉及PDF文档的情况下。您可以以压缩格式提供文件,以强制用户下载文件,但这也很烦人,因为用户随后必须解压缩文件。
您可以使用header()PHP中的功能,强制Web浏览器将文件作为下载提供。下面的少量代码将使用任何文件名并将其提供为下载文件。
您所要做的就是链接到此脚本,其中的参数是您希望用户能够下载的文件名。
这样处理的好处是,您还可以在文件的开头放置一些跟踪元素,以记录文件的下载内容和下载时间。
但是,在这里要非常小心。在当前状态下,该脚本将允许用户通过提供名称来下载脚本所在目录中的任何文件。这是一项重要的安全功能,因为用户可以很容易地获得数据库密码文件。为了解决这个问题,您可以使用以下代码将文件类型限制为jpg,gif,png或pdf。
最后,最好在试图让用户下载文件之前检查文件是否存在。事实并非如此,他们将获得完整的PHP错误代码文件。