首页 >后端开发 >php教程 >如何在 PHP 中强制下载文件?

如何在 PHP 中强制下载文件?

Linda Hamilton
Linda Hamilton原创
2024-12-28 05:44:10206浏览

How Can I Force File Downloads in PHP?

在 PHP 中强制下载文件

单击链接下载 CSV 文件时,用户经常会遇到文件在浏览器中打开而不是下载的问题。此问题源于服务器的默认行为,即在浏览器中显示文本文件。为了强制下载,PHP 提供了多种解决方案。

.htaccess 解决方案

对于全局解决方案,请将以下行添加到您的 .htaccess 文件中:

AddType application/octet-stream csv

这指示服务器将所有 CSV 文件视为应按原样下载的二进制数据,无论用户的浏览器设置。

PHP 解决方案

或者,您可以通过添加以下代码在 PHP 中手动处理下载:

header('Content-Type: application/csv');
header('Content-Disposition: attachment; filename=example.csv');
header('Pragma: no-cache');
readfile("/path/to/yourfile.csv");

这段代码:

  1. 设置适当的内容类型来指示CSV 文件。
  2. 将内容配置定义为具有指定文件名的附件。
  3. 禁用浏览器缓存以防止文件在浏览器中打开。
  4. 将文件输出到即时下载客户端。

以上是如何在 PHP 中强制下载文件?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn