使用 PHP 强制下载文件

2023-11-29

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

我的代码如下所示

<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>

现在我的内容csv.php file:

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

现在我的问题是它正在下载,但不是我的 CSV 文件。它创建一个新文件。


.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");
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 PHP 强制下载文件 的相关文章

  • PDO::commit() 成功或失败

    The PHP PDO 提交 http www php net manual en pdo commit php文档指出该方法成功时返回 TRUE 失败时返回 FALSE 这是指beginTransaction 和commit 之间的语句执
  • 根据数组计数填充复选框

    我是新来的php我已经使用了它的开发php array 我想填充checkboxes根据数组计数 为了做到这一点 我尝试了以下方式 它对我不起作用 有什么方法可以做到这一点 在我的例子中 数组计数 5 所以我相应地需要 5 个复选框
  • Laravel 验证:存在附加列条件 - 自定义验证规则

    在 Laravel 中指定存在验证规则时 是否有一种方法可以引用另一个字段 我希望能够说输入 a 必须存在于表 a 中 输入 b 必须存在于表 b 中 并且表 b 中列 x 的值必须等于输入 a 最好通过例子来解释 public rules
  • 如何让 shell_exec 在 IIS 6.0 上运行

    问题 我有一个 PHP 脚本 它使用shell exec运行 pdf 到文本转换器 为了简化问题 我创建了一个简短的脚本 使用shell exec只是回显的输出dir命令 当我在 Apache 服务器上运行它时 一切都按预期运行 当我切换到
  • 使用 PhpStorm 删除 CakePHP 中的插件后出现“成员有私人访问错误”

    从我的 CakePHP 框架中删除插件以及与其关联的所有代码行后 我在以下位置收到错误getInitializer的功能autoload static php in my vendor gt composer folder public s
  • 为什么当尝试使用 $this->data 访问 CakePHP 时,密码字段为空?

    我正在实现一个身份验证组件 这是我的注册页面 create User array action gt login echo form gt input primary email array size gt 32 echo form gt
  • 使用 R 下载压缩数据文件、提取并导入 .csv

    我正在尝试使用以下方法从网页下载并提取 csv 文件R 这个问题是重复的使用 R 下载压缩数据文件 提取和导入数据 https stackoverflow com questions 3053833 using r to download
  • 基本表创建 fpdf

    我找不到使用 fpdf 制作表格并从 mysql 数据库获取数据的合适教程 我只是想知道如何创建一个 我在网上尝试示例时遇到了很多错误 例如 我有 名字 中间名 姓氏 年龄 和 电子邮件 列 如何使用 fpdf 创建表格并回显数据库中的条目
  • CSS 无法与 CodeIgniter 一起使用

    这是我的 CI 代码的一部分 class page extends CI Controller var Page public function construct parent construct this gt Page 1 this
  • Facebook 中用户的时区是如何编码的

    我需要检查用户的时区 但我找不到它的真正定义 参考API http developers facebook com docs reference api user says 用户的时区与 UTC 的偏移量 现在在维基百科上这些是可能的时区
  • PHP 相等变量

    我想知道是否有任何方法可以检查大量变量是否相等 如果我只有几个变量 我可以这样做 if a b a c b c 但是 如果我有 20 个变量 则需要一些时间来编写所有组合 还有其他方法吗 if count array unique arra
  • 从 PDO 准备好的语句中获取原始 SQL 查询字符串

    在准备好的语句上调用 PDOStatement execute 时 有没有办法让原始 SQL 字符串执行 出于调试目的 这将非常有用 我假设您的意思是您想要最终的 SQL 查询 并将参数值插入其中 我知道这对于调试很有用 但这不是准备好的语
  • 如何在无法重启的服务器(Apache)上使用gettext?

    我在服务器故障上问了这个问题 https serverfault com questions 104224 how do you use gettext on server apache you cant restart但我没有得到任何回应
  • 如何从控制器访问 Zend Framework 应用程序的配置?

    我有一个基于 Zend 框架的应用程序快速开始 http framework zend com docs quickstart setup 我已经让演示工作起来 现在正在实例化一个新的模型类来完成一些实际工作 在我的控制器中 我想将配置参数
  • PHP mkdir() 和 fopen() 不起作用 - 权限问题? umask问题?

    以下 PHP 脚本无法创建目录 它也将无法创建文件 当目录已经存在时 ini set error reporting E ALL define ABSPATH SERVER DOCUMENT ROOT echo ABSPATH br br
  • 在 PHP 中将十进制/双精度/浮点值与 PDO 绑定的最佳方法是什么?

    看来类常量只涵盖PDO PARAM BOOL PDO PARAM INT and PDO PARAM STR用于绑定 您只是将十进制 浮点 双精度值绑定为字符串还是有更好的方法来处理它们 MySQLi 允许使用 d 类型表示 double
  • 在 Apache 服务器上将特定的 .htm 页面处理为 .php [重复]

    这个问题在这里已经有答案了 我正在为 Apache 服务器编程 并且只需要将一个特定的 html 页面 例如 first htm 作为 PHP 脚本进行处理 可以设置吗 SetHandler http httpd apache org do
  • PHP 日志文件颜色

    我正在编写一个 PHP 日志文件类 但我想为写入文件的行添加颜色 我遇到的问题是颜色也会改变终端的颜色 我想要实现的是仅更改写入日志文件的行的颜色 class logClass extends Singleton private funct
  • Yii 查询时对相关模型的限制

    我遇到了极限问题 我正在使用的代码如下 model PostCategory model record model gt with array posts gt array order gt posts createTime DESC li
  • PHP 文件服务脚本:下载不可靠?

    这篇文章最初是关于 ServerFault 的一个问题 https serverfault com questions 131156 user receiving partial downloads https serverfault co

随机推荐

  • 当变量保存值时插入 COUNTIF 公式

    考虑 Cells 2 Q Formula COUNTIF P 1 P1 P2 0 当我有一个保存值的变量时 如何插入这些公式 有时我必须从 3550 行和 4000 行开始公式 这取决于数据 好吧 当我用谷歌搜索时 我什么也没找到 他们都使
  • 无需越狱即可检测传入的短信或 iMessage

    在我的应用程序中 我只是尝试检测传入的 SMS 或 iMessage 我不需要知道它来自哪里或其内容 只要知道它进来即可 我见过很多越狱解决方案 有没有办法在不越狱的情况下在 iOS 6 中做到这一点 看起来如果没有越狱就不可能做到这一点
  • 如何自定义浮动操作按钮形状?

    我正在尝试创建一个具有自定义形状的自定义 FAB 我尝试过设置android background随着shapeAppearanceOverlay and shapeAppearance财产 但仍然没有运气
  • 如何使用 Firefox SDK 插件将 iframe 附加到托管页面?

    Assume frame htmlFirefox SDK 插件中的数据文件夹内 如何附加 iframe 并定义frame html作为它的来源 附加信息 由于CPS 不可能使用内联源 所以我不能使用data load frame html
  • Ubuntu 11.04 上的 wx.TaskBarIcon

    Ubuntu 11 04下Unity没有托盘 如何让图标出现在 Unity 中的某个位置 wx TaskBarIcon 没有出现在任何地方 谢谢 使用 Ubuntu Unity 桌面环境 即 Ubuntu 11 04 或 11 10 您需要
  • Struts 2 中的 等效项

    下面是 html 标签 multibox 我想将其迁移到 struts 2
  • Strapi:是否可以跟踪用户修改内容?

    我目前正在对 Strapi 进行一些研究 以便在其上构建我的 API 我想知道是否可以在 JSON 中公开一个字段 该字段包含有关负责对特定内容进行最后修改的用户的信息 我知道 API 默认在 JSON 对象中公开一个 updatedAt
  • matplotlib 轴刻度标签由散点图覆盖(使用脊柱)

    我想让我的轴穿过散点图中的原点 0 0 这就是我在下面的示例中设置脊柱位置的原因 问题是散点图上的实际数据点覆盖了轴刻度标签 因此无法看到它们 如何让 matplotlib 用我的轴刻度标签 覆盖 数据点以便可以看到它们 import nu
  • 使用 PDFBox ETSI 验证进行 Pades 签名

    我使用 PDFBOX 创建了 PDF PAdES 签名 并且正在使用 ETSI 在线验证器1 它需要注册 现在我在报告中只收到两个错误 但我有点不知道它们是什么或如何修复它们 这是 etsi 在线验证器报告 这是我用来签名的代码 Overr
  • 如何使用 Swing 和 JLayer<> 在 Java 中制作模糊的 JFrame/JDialog?

    我正在尝试模糊我的 JFrame 这个想法是使用 JLayer LayerUI 模糊 JFrame 中的所有组件 控件 这是我到目前为止所做的 这是制作模糊效果的 LayerUI 类 import java awt Component im
  • 自 Google Scripts V8 更新以来搜索模式错误

    自从谷歌强制更新后 这个项目正在我们由 Chrome V8 提供支持的新 Apps 脚本运行时上运行 我收到以下错误 但我不明白为什么 异常 无效参数 recreateReferral 处的 searchPattern recreateRe
  • 将用户区域设置包含到 Keycloak ID 令牌中

    我希望 Keycloak 1 4 0 将用户选择的区域设置包含到 ID 令牌中 我已经创建了一个用户属性映射器 它应该将区域设置属性映射到令牌 但它不起作用 有人知道怎么做这个吗 提前致谢 编辑 我从这堂课中学到了关于 Keycloak L
  • MVC 验证消息 - 本地化?

    我有个问题 主服务器和本地主机上的文件完全相同 但在本地主机中 我有我的母语的消息 例如 Pole Email jest wymagane 在主服务器上我有 The Email field is required 正如我所说 文件是完全相同
  • QML 渲染引擎:帧刷新事件

    性能考虑因素和建议文章说 作为应用程序开发人员 您必须努力让渲染 引擎实现一致的每秒 60 帧的刷新率 60 FPS 意味着每个帧之间大约有 16 毫秒 可以在其中进行处理的框架 其中包括处理 将绘制基元上传到图形硬件所需的 是否有事件或信
  • 法语翻译引发“ValueError('复数形式的无效标记:%s'%值)”

    我想处理我的网站的法语版本 我将 Django 2 2 与 i18n 一起使用 并且我已经在 settings py 中设置了语言环境变量 Internationalization https docs djangoproject com
  • 使用身份验证 cookie 打开 WebSocket 连接

    我有同样的问题Android 中的 Websocket 和 cookie 我一直在尝试按照第一条评论的建议解决这个问题 WebSocketClient URI serverUri 草稿协议Draft 映射httpHeaders int co
  • 在 Java 中打印 BufferedImage 的正确方法

    我想知道是否有正确的方法来打印BufferedImage在爪哇 基本上我已经创建了一个运行良好的照片处理程序 我可以保存图像等 但我真正的目标是将其发送到打印机软件 以便您可以选择要打印的页数和页面类型 所以我的简短问题是 如何将缓冲图像发
  • Object var 和 Object* var = new Object() 之间的区别

    如果我有一个名为 Object 的类 那么创建一个实例有什么区别 Object var and Object var new Object 这里你在堆栈上创建 var Object var 所以在上面的内容中 var是实际的对象 这里您在堆
  • Javascript 在页面上查找文本

    我需要在类似于以下内容的 HTML 上运行搜索和替换 我需要有 查找下一个 替换 和 全部替换 选项 诀窍是我需要运行 AJAX 请求替换值后 更新数据库中每个字段的值 我遇到的唯一麻烦是我不确定如何搜索内容 sheet并将这些值替换为用户
  • 使用 PHP 强制下载文件

    我的服务器上有一个 CSV 文件 如果用户单击链接 它应该下载 但它会在我的浏览器窗口中打开 我的代码如下所示 a href files csv example example csv Click here to download an e