如何强制使用PHP下载文件?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (46)

我有一个文件在我的服务器上,如果用户点击一个链接,它应该下载,但它打开我的浏览器窗口。

我的代码如下所示

<a href="files/csv/example/example.csv">
    Click here to download an example of the "CSV" file
</a>

我试过

<a href="files/csv/example/csv.php">
    Click here to download an example of the "CSV" file
</a>

现在我的内容

header('Content-Type: application/csv');
header('Content-Disposition: attachment; filename=example.csv');
header('Pragma: no-cache');
提问于
用户回答回答于

.htaccess解决方案

要强制服务器上的所有csv下载,添加到你的.htaccess文件中:

AddType application/octet-stream csv

PHP解决方案

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

你可以使用html5来做到这一点。

<a href="example.csv" download>download not open it</a>

扫码关注云+社区

领取腾讯云代金券