如何在 PHP 中下载现有文件

2024-03-12

我的服务器上有一个 pdf 文件。我想创建这样的链接,用户可以单击它并下载该 pdf 文件。我正在使用 Zend 框架与 Php 一起工作。


将此代码放入 php 文件中并将其命名为 f.e. “下载.php”:

<?php

$fullPath = "path/to/your/file.ext";

if ($fd = fopen ($fullPath, "r")) {

    $fsize = filesize($fullPath);
    $path_parts = pathinfo($fullPath);
    $ext = strtolower($path_parts["extension"]);

    header("Content-type: application/pdf");
    header("Content-Disposition: attachment; filename=\"".$path_parts["basename"]."\"");            
    header("Content-length: $fsize");
    header("Cache-control: private");

    while(!feof($fd)) {
        $buffer = fread($fd, 2048);
        echo $buffer;
    }
}

fclose ($fd);
exit;

?>

示例:将此类链接放入提供文件下载的文档中:

<a href="download.php?download_file=some_file.pdf">Download here</a>

更多详情:

http://www.finalwebsites.com/forums/topic/php-file-download http://www.finalwebsites.com/forums/topic/php-file-download

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

如何在 PHP 中下载现有文件 的相关文章

  • 如何使用CSS将背景图像放入选择选项标签中

    我有一个从 json 响应接收的国家 地区下拉列表 并且想要在国家 地区名称旁边添加相应的国家 地区国旗图标 也从 json 响应获取图像 我已经尝试了不同的 jQuery 和 bootstrap 插件 但他们所做的是破坏我以前的选择框样式
  • 运行没有扩展名的 PHP 页面

    我想在 apache Web 服务器上运行我的 PHP 网页 而不需要 php扩大 所以我添加了以下代码 RewriteEngine on RewriteBase Rewritecond REQUEST URI NC RewriteRule
  • 如何在 Python 中包含 PHP 脚本?

    我有一个 PHP 脚本 news generator php 当我包含它时 它会抓取一堆新闻项并打印它们 现在 我在我的网站 CGI 中使用 Python 当我使用 PHP 时 我在 新闻 页面上使用了这样的内容 为了简单起见 我删掉了这个
  • 按通用值对值进行分组:userid 和 ipaddress

    我正在解决数据库中的一个问题 我正在尝试查找使用多个帐户的用户 我有一个用户 ID 和使用的 IP 地址的列表 如下所示 用户 ID IP 地址 1 IP 地址 13 2 IP 地址 23 1 IP 地址 12 4 IP地址56 9 IP
  • PHP - Filter_var 替代方案?

    我构建了一个 php 脚本来输出以表单形式发布的数据 但遇到了问题 网站将运行的服务器运行 PHP 5 1 6 此版本的 PHP 不支持 filter var 我需要知道短期内的替代方案 最好是昨天 但在 Google 或 Stack Ov
  • 第三个下拉菜单不从数据库填充

    我有以下 Index php
  • 在 Symfony 序列化中更改序列化属性名称

    我正在使用 Symfony 序列化器 效果很好 use Symfony Component Serializer Annotation Groups Groups default notification public function g
  • 如何解码 eval( gzinflate( base64_decode(

    我已将此代码注入到我的网站中 如何解码尾随字符串 我需要知道发生了什么以及其背后的代码是什么 这应该输出将被执行的代码eval 我希望这就是您正在寻找的
  • 使用php将数据存储到文本文件中?

    我正在尝试将数据存储在文本文件中 例如使用 php 将数组存储到文本文件中 而不是存储到 mysql 数据库中 例如 这里是要存储在文本文件中的数据 name gt john age gt 25 location gt australia
  • 使用 PHP 的 MySQL 连接字符串

    我正在尝试通过本地计算机连接到托管在我的服务器上的数据库 我的服务器有cPanel 11 它是一个典型的共享服务器 由CentOS提供支持 安装了PHP和MySQL 准确地说 我在同一台服务器上持有经销商帐户 我想在不同帐户或域之间访问数据
  • 自动建议 php 的 ajax

    我有一个 html 表单 php 脚本和 jquery 我需要一个 ajax 代码来从我的 php 脚本中进行自动建议 以下是代码 表单 html
  • JavaScript 验证和 PHP 验证?

    我正在使用 jquery 验证插件来验证空表单 我还应该在 PHP 中检查一下以确保 100 正确吗 或者用 javascript 验证就可以了 谢谢 您应该始终在服务器上进行验证 如果用户以某种方式不使用 Javascript 提交表单
  • phpunit测试调用其他需要mock的类方法的方法

    我正在尝试创建一个非常标准的单元测试 在其中调用一个方法并断言它的响应 但是我正在测试的方法调用同一类中的另一个方法 该方法做了一些繁重的工作 我想模拟该方法 但仍按原样执行我正在测试的方法 仅使用从调用另一种方法返回的模拟值 我简化了示例
  • MVC 模式中的验证层

    验证模型将使用的数据的最佳位置在哪里 例如 考虑登记表 我们有一些来自注册表的数据 那么验证这些数据的最佳位置在哪里 我们应该通过 if 语句或特殊的验证器类来检查每个数据 这意味着大量的编码 所以我想了解在哪里可以做到这一点 在控制器中
  • WordPress 插件中的类自动加载器

    我想编写一个类自动加载器以在 WordPress 插件中使用 该插件将安装在多个站点上 我想尽量减少与其他插件发生冲突的机会 自动加载器将是这样的 function autoload name some code here 我的主要问题是
  • Laravel leftJoin 仅右表的最后一条记录

    我是 Laravel 的新手 我有两张桌子 1 产品 2 价格 products id product int p key name varchar prices id price int p key id product int
  • 从 PHP 数组生成 HTML 表

    我不明白这一点 我需要解决看似简单的问题 但这超出了我的逻辑 我需要编写一个函数 table columns input cols 它将输出一个表 示例 input array apple orange monkey potato chee
  • [zend][db] 具有多个变量的 fetchAll

    我试图在有 2 个变量的查询上使用 fetchAll 我无法弄清楚语法 我只能用 1 个变量进行管理 sql SELECT FROM mytable WHERE field1 this gt db gt fetchAll sql value
  • Laravel $request->file() 返回 null

    尝试在后端使用 Laravel 上传文件时遇到问题 Issue Laravel request gt file 方法返回 null Setup 我使用以下方法构建了一个 AJAX 请求超级代理人 https github com visio
  • 使用 php-ews(Exchange Web 服务)在特定日期后获取电子邮件

    在我的 PHP 脚本中 我需要弄清楚如何检索指定消息 ID 之后或特定日期之后的所有电子邮件 两者都可以 我只需要检索自上次抓取收件箱以来的新电子邮件 这个收件箱每天收到数千封电子邮件 而且我在 30 天内无法删除任何电子邮件 对于初始导入

随机推荐

  • 哪些方法可用于管理现有数据库的不同版本?

    Note这旨在成为提出并回答你自己的问题 as per 以问答方式分享您的知识 https stackoverflow blog 2011 07 01 its ok to ask and answer your own questions
  • Ruby - 找到哈希值最大值的键

    我有一个散列 我想返回散列最大值的键 或键 值对 因此 如果只有一个真正的最大值 它将返回该键 但是 如果有多个具有相同值的键 值对 它将返回所有这些键 我怎样才能在 Ruby 中完成这个任务 my hash max by k v v on
  • psycopg2 - 插入整数数组

    我正在使用 Postgres 9 2 Python 2 7 3 psycopg2 2 5 1 我有一个表 其中一个字段声明为 some field int NOT NULL 我需要插入一些数据 所以我正在做这样的事情 cursor exec
  • 使用 1D 数组绘制 2D 绘图,无需 griddata()

    我正在尝试使用绘制两个变量的函数matplotlib 该函数存储在三个一维数组中X Y and F对应x坐标 y坐标和函数值 是否可以将这些数据绘制为等高线图 在我看到解决方案之前griddata 但我想避免插值 因为 x 和 y 坐标已经
  • 将非 bat 扩展文件作为批处理文件运行

    假设我有一个文本文件 它包含批处理命令 我怎样才能从一个文本文件中将其作为批处理文件运行 without重命名它 我也想保留它的可移植性 所以没有注册表项之类的 不重命名的原因是为了防止意外关闭时留下未重命名的文件 最简单的方法是这样的 c
  • IE bug 源 HTML5 音频无效 - 解决方法

    我 和大约一百万人 在 IE11 中发现了一个错误 不确定其他版本是否有相同的错误 如果您创建 HTML5 音频标签 浏览器无论如何都会报告 无效源 我已经尝试了所有我能想到的组合 但没有成功 迄今为止 将 HTML 结束标记从自闭更改为显
  • Mongo_mapper限制结果

    我有一个这样的查询 allJobs Job where merchant id gt session admin id to s sort start date desc limit 100 当我对此运行 count 时 我得到 jobs
  • 对于基于 Sandy Bridge 的 Pentium,正确的特定于体系结构的选项 (-m) 是什么?

    我正在尝试弄清楚如何设置 march正确地查看在使用 gcc 4 7 2 的 PC 上启用和禁用选项之间会出现多少性能差异 在尝试编译之前 我试图找到最好的 march我的电脑的选项 我的电脑有Pentium G850 其架构是Sandy
  • 如何获取旋转的线性渐变 svg 用作背景图像?

    我看到了一些围绕这个问题的问题 所以我希望这不是太多余 理想情况下 我想要一个image svg xml它可以扩展到容器的 100 彩色西拉 http www colorzilla gradient editor让我有一个良好的开端data
  • Visual Studio 2010 intellisense for KnockoutJS inside RequireJS

    我想在 Visual Studio 2010 中获得智能感知 用于淘汰 JS 经过一番研究后我得到的是 reference path lib knockout knockout 2 3 0 debug js gt ko WeGotIntel
  • Rails 4 和 Ruby 2 Net/HTTP SSL 请求:OpenSSL::SSL::SSLError: SSL_connect returned=1 errno=0 state=SSLv2/v3 read server hello A: 未知协议

    这几乎是以下内容的重复 SSL connect 返回 1 errno 0 状态 SSLv3 读取服务器证书 B 证书验证失败 https stackoverflow com questions 4528101 ssl connect ret
  • 水晶报表中从右到左的字符串

    考虑 SQL Server 中的以下查询 下图是水晶报表中查询的结果 正如你所看到的 右侧部分与sql server中的查询结果完全相同 左侧部分通过锁定函数进行转换 以满足波斯语从右到左的属性 我需要获得这个功能 首先 你需要重写你的sq
  • X11 非剪裁子窗口

    X 有非裁剪子窗口的概念吗 中的行为 Windows 和 OSX 的这些是 父母总是站在孩子后面 当父项关闭时 子项也会自动关闭 孩子们在移动时跟随父母 如果答案是否定的 那么我可以模拟 2 和 3 但是 1 怎么样 Thanks Cosm
  • 猫鼬有 isDirty 检查吗?

    我有一个涉及嵌入式模式的猫鼬设置 可以说 带有嵌入式评论的博客文章 评论可以由原始发布者以及编辑 管理员编辑 添加 编辑评论后 整个博客文章将被保存 我在嵌入式评论模式上设置了一些自定义猫鼬的 预 中间件 它会自动设置该特定评论的laste
  • 驱动程序可执行文件必须由 webdriver.ie.driver 系统属性设置

    我正在使用 Selenium 来自动化测试 我的应用程序仅使用 IE 它无法在其他浏览器上运行 Code import org openqa selenium ie InternetExplorerDriver import org ope
  • Firebase onAuthStateChanged 始终返回未定义

    我一直在尝试创建一个 util 方法 该方法将返回用户对象或用户对象是否存在 如果没有参数 它应该返回一个布尔值 如果有参数 getUser 它应该返回用户对象 但它总是返回未定义的 这似乎工作了一段时间 但后来我休息了一下 回来时它总是返
  • 在 NodeJS 中安排异步函数

    我想安排一个异步函数 异步 等待返回类型 每两分钟运行一次 我尝试使用通用setInterval 节点模块如节点计划 cron 节点计划 异步轮询但无法实现异步函数调用的轮询 这是我在代码中尝试过的 cron schedule 2 awai
  • 使用 create-react-app 时出现“未捕获的引用错误:jQuery 未定义”

    正在使用构建 React 应用程序创建反应应用程序 https github com facebookincubator create react app所以该应用程序已准备好服务器 当导入引导 javascript 插件 例如 affix
  • Android 中的日期验证

    我是 Android 编程新手 目前正在开发一个应用程序 有人可以帮助我如何验证用户输入的日期是否有效 private Pattern pattern private Matcher matcher private static final
  • 如何在 PHP 中下载现有文件

    我的服务器上有一个 pdf 文件 我想创建这样的链接 用户可以单击它并下载该 pdf 文件 我正在使用 Zend 框架与 Php 一起工作 将此代码放入 php 文件中并将其命名为 f e 下载 php