用PHP实现浏览器点击下载TXT文档的方法详解


Posted in PHP onJune 02, 2013

由于现在的浏览器已经可以识别txt文档格式,如果只给txt文档做一个文字链接的话,点击后只是打开一个新窗口显示txt文件的内容,并不能实现点击下载的目的。当然这个问题的解决办法也可以是将txt文件改名为浏览器不认识的文件(比如rar),这样的话,由于浏览器不能识别rar类型的文件,只能让用户下载了。还有一种办法,就是利用代码通过header设置文档的格式来实现点击下载的目的。
PHP代码如下:
===========================================================
$filename = '/path/'.$_GET['file'].'.txt'; //文件路径
header("Content-Type: application/force-download");
header("Content-Disposition: attachment; filename=".basename($filename));
readfile($filename);
===========================================================
简要说明:
第一个header函数设置Content-Type的值为application/force-download;
第二个header函数设置要下载的文件。注意这里的filename是不包含路径的文件名,filename的值将来就是点击下载后弹出对话框里面的文件名,如果带路径的话,弹出对话框的文件名就是未知的;
最后通过readfile函数,将文件流输出到浏览器,这样就实现了txt文件的下载。

PHP 相关文章推荐
一个简单计数器的源代码
Oct 09 PHP
smarty 原来也不过如此~~呵呵
Nov 25 PHP
用PHP将数据导入到Foxmail的实现代码
Sep 05 PHP
开启CURL扩展,让服务器支持PHP curl函数(远程采集)
Mar 19 PHP
CI框架源码阅读,系统常量文件constants.php的配置
Feb 28 PHP
thinkphp路由规则使用示例详解和伪静态功能实现(apache重写)
Feb 24 PHP
php去除换行(回车换行)的三种方法
Mar 26 PHP
PHP遍历XML文档所有节点的方法
Mar 12 PHP
详解PHP执行定时任务的实现思路
Dec 21 PHP
PHP基于DateTime类解决Unix时间戳与日期互转问题【针对1970年前及2038年后时间戳】
Jun 13 PHP
Yii2框架视图(View)操作及Layout的使用方法分析
May 27 PHP
如何重写Laravel异常处理类详解
Dec 20 PHP
优化PHP代码技巧的小结
Jun 02 #PHP
PHP无限分类(树形类)的深入分析
Jun 02 #PHP
基于php无限分类的深入理解
Jun 02 #PHP
php curl的深入解析
Jun 02 #PHP
Window 7/XP 安装Apache 2.4与PHP 5.4 的过程详解
Jun 02 #PHP
web站点获取用户IP的安全方法 HTTP_X_FORWARDED_FOR检验
Jun 01 #PHP
获取用户Ip地址通用方法与常见安全隐患(HTTP_X_FORWARDED_FOR)
Jun 01 #PHP
You might like
php microtime获取浮点的时间戳
2010/02/21 PHP
Zend Framework开发入门经典教程
2016/03/23 PHP
PHP如何使用Memcached
2016/04/05 PHP
PHP 文件锁与进程锁的使用示例
2017/08/07 PHP
QQ登录简单实现代码
2021/03/09 Javascript
HR vs ForZe BO3 第二场 2.13
2021/03/10 DOTA
Javascript 各浏览器的 Javascript 效率对比
2008/01/23 Javascript
jquery div拖动效果示例代码
2013/12/08 Javascript
seaJs的模块定义和模块加载浅析
2014/06/06 Javascript
在HTML代码中使用JavaScript代码的例子
2014/10/16 Javascript
javascript数组随机排序实例分析
2015/07/22 Javascript
BootStrap中的Fontawesome 图标
2017/05/25 Javascript
js自定义Tab选项卡效果
2017/06/05 Javascript
vue axios同步请求解决方案
2017/09/29 Javascript
async/await地狱该如何避免详解
2018/05/10 Javascript
AngularJs中$cookies简单用法分析
2019/05/30 Javascript
解决Vue调用springboot接口403跨域问题
2019/09/02 Javascript
解决新建一个vue项目过程中遇到的问题
2020/10/22 Javascript
phpsir 开发 一个检测百度关键字网站排名的python 程序
2009/09/17 Python
python中WSGI是什么,Python应用WSGI详解
2017/11/24 Python
Python多线程爬虫实战_爬取糗事百科段子的实例
2017/12/15 Python
用tensorflow搭建CNN的方法
2018/03/05 Python
python re正则匹配网页中图片url地址的方法
2018/12/20 Python
django-rest-swagger对API接口注释的方法
2019/08/29 Python
创建Shapefile文件并写入数据的例子
2019/11/26 Python
python基于win32api实现键盘输入
2020/12/09 Python
一个基于canvas的移动端图片编辑器的实现
2020/10/28 HTML / CSS
英国航空官网:British Airways
2016/09/11 全球购物
大众服装店创业计划书范文
2014/01/01 职场文书
大型车展策划方案
2014/02/01 职场文书
学雷锋志愿服务月活动总结
2014/03/09 职场文书
员工试用期转正自我评价
2015/03/10 职场文书
莫言获奖感言(全文)
2015/07/31 职场文书
2016年小学植树节活动总结
2016/03/16 职场文书
Nginx+Tomcat实现负载均衡、动静分离的原理解析
2021/03/31 Servers
sql server 累计求和实现代码
2022/02/28 SQL Server