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

yipeiwu_com5年前PHP代码库

由于现在的浏览器已经可以识别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实现指定字符串中查找子字符串的方法

本文实例讲述了php实现指定字符串中查找子字符串的方法。分享给大家供大家参考。具体分析如下: 对strpos()函数可以用来在php中查找子字符串。strpos()函数将试图找到子字符串...

php使用pdo连接sqlite3的配置示例

本文实例讲述了php使用pdo连接sqlite3的配置方法。分享给大家供大家参考,具体如下: 刚刚开始使用php+sqlite 的时候,一直以为自己使用的是sqlite3 ,其实不是,p...

在PHP程序中使用Rust扩展的方法

 C或PHP中的Rust 我的基本出发点就是写一些可以编译的Rust代码到一个库里面,并写为它一些C的头文件,在C中为被调用的PHP做一个拓展。虽然并不是很简单,但是很有趣。...

php利用ffmpeg提取视频中音频与视频画面的方法详解

前言 FFmpeg的名称来自MPEG视频编码标准,前面的“FF”代表“Fast Forward”,FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。可...

从php核心代码分析require和include的区别

从php核心代码分析require和include的区别

深入理解PHP之require/include顺序 https://www.jb51.net/article/25867.htm普及在php手册中: require() is ide...