首页 > 语言 > 关键词 > php最新资讯 > 正文

PHP通过header实现文本文件的下载

2009-01-22 11:11 · 稿源:IT专家网论坛

PHP帮助文档里面关于PHP通过header触发下载的说明比较简单,而网上关于此方面的文章也少的可怜,有很多文章都无法实现所需要的效果。今天我也来谈一下这个方面的话题,如果你感觉比网上的某些文章有所改进,那我就很知足了。

如果从准确的角度来说,那PHP文档是最准确的,因为它很简练的列出了实现文本类文件触发下载所需要的三条语句,以PDF为例就是:

以下为引用的内容:

  // We'll be outputting a PDF

  header('Content-type: application/pdf');

  // It will be called downloaded.pdf

  header('Content-Disposition: attachment; filename="downloaded.pdf"');

  // The PDF source is in original.pdf

  readfile('original.pdf');

这三句是正确的,但是在真正用的过程中很容易出现一些无法预料的问题,如果你是一个很仔细的人的话,也可以很容易的避免这些问题。而我不是,所以我就遇到了这样的问题,这里就以我的问题来简单说一下。

对于第一句,应该没啥说的,是必须的,只要改一下文档的类型就行,例如是下载txt文件,那就改为header(’Content-type: application/txt’);,第二句也没啥说的,就是为你的下载文档起一个名字,如果是txt文件的话,可以改为header(’Content-Disposition: attachment; filename=”downloaded.txt”‘);,第三句的问题就比较多了,readfile这个函数的意思就是读取一个文件然后输出,这里文件的路径需要是真实的文件路径,如果是downloads文件夹下面的一个original.txt文件,可以这样写readfile(’downloads/original.txt’);,而如果提交的页面会输出文本等字符,那么下载到的文件会是原文件original.txt和提交的页面输出的文字的混合文件。我在这里就缺少了仔细的观察,一看下面不对就立即去查代码了,而没发现上面的文本就是我需要的内容,发现了这部分内容,你可能就很快想到怎么来解决这个问题了,也就是关闭提交到的页面的文本内容的输出。 到这里,问题就解决了,从而也就实现了文本文件链接被点击的时候会触发下载对话框的效果。

  • 相关推荐
  • 大家在看
  • iOS14.0.1描述文件下载地址 iOS14.0.1描述文件在哪下载

    iOS14.0.1系统在9月25日更新发布更新,这次的更新主要是针对iOS14正式版发布以来出现的各种bug进行修复,没有增加新的功能,以下我们来看下iOS14.0.1更新内容以及描述文件的下载地址。

  • iOS14.2公测版Beta3描述文件下载 iOS14.2描述文件在哪下载

    2020年10月15日,在今天苹果正式发布了iOS14.2公测版Beta3版本,其中新增了一些小功能和表情包,一些小伙伴还在找iOS14.2公测版Beta3的描述文件,下面就来为大家分享一下。

  • iOS14.2公测版beta1描述文件下载地址 iOS14.2描述文件在哪下载

    9月22日,在今天苹果正式推送了iOS14.2公测版的beta1版本,其中加入了一些小功能,很多朋友还不清楚这个iOS14.2描述文件在哪下载,下面就来为大家分享一下。

  • 站长之家诚聘:SEO高手、资深网页设计师、JAVA/GO/PHP/.NET工程师

    2020年站长之家开启新一波人员招募,欢迎小伙伴加盟。本次的首推职位有资深SEO高手、资深网页设计师、JAVA/GO/PHP/.NET程序员,欢迎大家投递简历到hr@chinaz.com邮箱(务必附作品、工作经历、工作成绩等)。SEO高手(若干人)职责描述:1、负责站长之家网站的搜索引擎优化方案设计,提高网站流量、收录和排名;2、负责监控和调研搜索引擎数据与规则,调研竞争对手及其他网站相关策略,制定并实施应对和优化方案;3、负责对SEO相关数据进

  • o泡果奶软件在哪下载 o泡果奶一份礼物魔性文件下载链接

    最近在各大社交论坛上火起来一个o泡果奶的软件,这个魔性的文件名字是叫一份礼物,但是只要发送给别人安装之后,打开就会立马大声播放o泡果奶的洗脑广告,而且如果不知道操作,就很难关掉,那么这个o泡果奶在哪下载呢?下面就来为大家分享一下。

  • iOS14.2描述文件下载 iOS14.2更新了什么

    苹果公司在近日更新了iOS14.2 beta2版本,在这个版本中加入了一些新功能,同时也修复了旧版本的bug问题,以下我们来看下iOS14.2版本的更新内容介绍。

  • 回收站删除的文件怎么恢复?删除文件恢复啦!

    经历过类似情况,可以找回。我一般不会再用回收站里的文件,一顿操作后清空了自个的回收站。结果有个临时安排需要用到之前的文件,但回收站已经被清除了!于是赶紧问了懂电脑的朋友,当时直接问了他怎么恢复。朋友告诉可以利用电脑注册表恢复,但是操作比较复杂。大概梳理了操作过程,删除文件终于恢复啦!1.单击“开始”,再点击“运行”,然后输入regedit(打开注册表,也就是通过这个注册表恢复)2.在注册表编辑器中有很多文件?

  • iPhone12手机壁纸在哪下载 苹果12官方高清壁纸

    苹果iPhone12系列手机在10月16日正式开始接受预定,不少用户对于苹果iPhone12新的壁纸也十分的喜欢,想要下载到自己的手机上使用,这里我们来一起看下苹果12手机的官方壁纸下载地址。

  • 原神日服怎么下载玩 日服官网超详细下载游玩教程

    原神在日服非常的火爆,很多玩家都想去日服玩原神,但是不知道去哪里下载游玩,下面就来为大家分享一下原神日服的下载安装教程。

  • 微软独家授权OpenAI的突破性GPT-3文本生成模型

    微软扩大了与旧金山人工智能研究公司OpenAI的持续合作关系,并获得了AI公司开创性的GPT-3语言模型的新独家许可,该模型是一种自动生成的文本程序,已成为业内同类软件中最复杂的一种。两家公司已经通过OpenAI 正在进行的Azure云计算合同相互纠缠,其中Azure是OpenAI用来访问其训练许多模型所需的大量计算资源的平台,并且微软去年做出了10亿美元的重大投资,成为OpenAI的独家授权云提供商。现在,微软通过获得GPT-3的?

  • 抖音怎么无水印下载视频 无水印视频下载步骤

    当你看到抖音上有喜欢的视频时,想要将它们无水印的下载保存到自己手机上,要怎么做呢,怎样才可以无水印下载抖音视频,我们来一起看下具体的操作方法吧。

  • iPhone12 5G速度怎么样有多快?苹果12下载网速测试

    10 月 14 日凌晨 1 点,苹果正式推出iPhone12 系列四款新机型,全部采用了直角边框+陶瓷晶面板的设计,在外观上的变化可以说是很大了。硬件方面,此次iPhone12 全系搭载最新的苹果A14 仿生处理器,是 iPhone首款 5 纳米制程芯片。iPhone12 的另一大的亮点就是支持了5G网络,那么它实际的网速表现是怎么样的呢?

  • 文件表明:特斯拉计划在德州奥斯汀新厂生产电池

    10月9日消息,据国外媒体报道,今年7月份,电动汽车制造商特斯拉的CEO马斯克表示,特斯拉的下一座超级工厂将建在德州奥斯汀。该公司向德州环境质量委员会提交的一份空气质量许可证申请文件表明,该公司计划在这个新工厂生产电池。特斯拉的德州奥斯汀新工厂将是特斯拉继内华达州超级工厂、纽约超级工厂、上海超级工厂和柏林超级工厂之后的第五家工厂,也将是继弗里蒙特工厂、上海工厂和柏林工厂之后的第四家汽车组装工?

  • DeFi步入2.0,OKEx打造“CeFi+DeFi”复合型挖矿

    6月以来,DeFi如一把燎原之火点燃了整个数字货币市场,动辄500%、2000%,甚至10000%以上的流动性挖矿年化收益掀起了圈内一场投机狂欢。新老项目轮番登台,迫切地向众人描绘着DeFi——那个能为任何人提供一个更平等、更透明、更开放的金融世界。但随着DeFi生态的日益壮大,劣质仿盘增多,项目未经审计的bug频出,再加上创始人恶意抛售代币,提前预支利好等情况,导致DeFi泡沫愈发严重,很多项目从开盘到归零,快则几小时,慢则2、3?

  • 你的swf文件还打不开?可能是你没发现这款软件!

    Swf这个格式的文件大家可能比较陌生,但是对于经常上网课的人来说,swf文件肯定有所耳闻,很多在线学习的课件都是swf格式。其实,swf文件是使用Flash软件生成的常见文件类型,除了网课之外,也会用于PPT中的视频插入等情况。因为使用较为频繁,经常有用户询问怎样才能在本地打开、查看swf格式的视频内容。 传统方法相信大家都有所了解,那就是通过使用浏览器打开这种文件格式,但这种办法不能百分百确保打开成功,如果遇上格式不?

  • SD卡无法格式化永久删除的文件如何恢复?

    我们在使用内存卡的时候有时候会遇到无法格式化的情况,一般来说这种情况是由于SD卡被写了保护或者是病毒在运行SD卡中的文件导致无法格式化,这时候我们应该如何去修复SD卡和里面的数据文件呢?下面就为大家介绍几个方法。第一种方法:命令符修复法步骤一、首先把无法格式化的SD卡通过读卡器接入电脑,电脑弹出提示格式化的窗口不要点击确定,取消后打开“开始菜单”,选择“开始菜单—运行”,输入“cmd”;步骤二、在cmd窗口写入

  • 原神928公测安卓iOS官网预下载地址 928公测预下载在哪下

    原神即将在9月25日的下午4点开启安卓和ios的预下载地址,很多玩家还不清楚到底在哪可以下到游戏,下面就来为大家分享一下。

  • 原神928公测预下载开启时间预告说明 928公测预下载什么时候开

    原神的官方在9月22日这天发布了原神多平台同步公测预下载开启预告,其中9月25日的下午4点开启预下载,很多玩家还不清楚怎么回事,下面就来为大家详细的介绍一下。

  • 特斯拉Model S Plaid性能续航怎样 Model S Plaid参数配置介绍

    特斯拉在美国当地时间9月22日“电池日”公布了一款升级的车型Model S Plaid,这是在Model S的基础上改进的一款车型,百公里加速不到2.1秒,最高时速超过300公里/小时,性能将十分强劲,以下我们来看下Model S Plaid的参数信息。

  • 魔兽世界9.0NDui插件最新版本下载地址 NDui插件在哪下载

    魔兽世界9.0前夕已经开了,大家首要的事情就是找插件了,很多玩家都对NDui的插件爱不释手,一些新手玩家还不清楚在哪可以下载到最新版本的NDui插件,下面就来为大家分享一下。

  • 参与评论
文明上网理性发言,请遵守新闻评论服务协议
  • 热门标签

热文

  • 3 天
  • 7天