php强制下载文件download file
2014-01-09 11:43
537 查看
由于现在的浏览器已经可以识别格式为txt的文档格式,所以如果只是给txt文档做一个文字链接的话,可能只是打开一个新窗口显示txt文件的内容,并不能实现点击下载的目的。We have to do something else.
当然这个问题的解决办法也可以是你将你的txt文件改名为浏览器不认识的文件,比如rar,这样的话点击,浏览器不认识就只好让用户下载了。
下面这个文件就是通过设置header设置文档的格式来实现点击下载的目的,将上个页面传递过来的文件点击可以下载。
<?php
$filename = "/somepath/".$_GET['file'].".txt"; //要下载的文件名
header("Content-Type: application/force-download");
header("Content-Disposition: attachment; filename=".basename($filename));
readfile($filename);
?>
首先:设置Content-Type的值为application/force-download,强制下载
接着第二个header函数设置了要下载的文件,注意这里filename是不包含路径的文件名,所以用basename过滤掉路径名。这个filename的值将来就是点击下载后弹出对话框里面的文件名.
最后就是readfile,将文件流输出到浏览器,这样就实现了txt文件的下载,其他类型的类似。
当然这个问题的解决办法也可以是你将你的txt文件改名为浏览器不认识的文件,比如rar,这样的话点击,浏览器不认识就只好让用户下载了。
下面这个文件就是通过设置header设置文档的格式来实现点击下载的目的,将上个页面传递过来的文件点击可以下载。
<?php
$filename = "/somepath/".$_GET['file'].".txt"; //要下载的文件名
header("Content-Type: application/force-download");
header("Content-Disposition: attachment; filename=".basename($filename));
readfile($filename);
?>
首先:设置Content-Type的值为application/force-download,强制下载
接着第二个header函数设置了要下载的文件,注意这里filename是不包含路径的文件名,所以用basename过滤掉路径名。这个filename的值将来就是点击下载后弹出对话框里面的文件名.
最后就是readfile,将文件流输出到浏览器,这样就实现了txt文件的下载,其他类型的类似。
相关文章推荐
- [PHP学习教程 - 网络]001.下载/采集远程文件到本地(Download File)
- 小程序下载图片、文件、wx.downloadFile,废话少说直接上代码
- php以不同名字下载同一个文件(x-sendfile)
- php中强制浏览器下载文件
- 在PHP中使用X-SendFile头让文件下载更快
- 使用PHP强制下载PDF文件
- bool DownloadFile(string sURL, ProgressBar pProgress, string Filename)(文件下载,进度条)
- 使用PHP强制下载PDF文件
- php download.php实现代码 跳转到下载文件(response.redirect)
- php 利用Fileinfo 获取文件MIME类型(finfo_open) 下载
- php readfile下载大文件失败的解决方法
- PHP强制下载文件
- URLDownloadToFile 直接下载文件
- php强制文件下载(避免文件或图片直接在浏览器中打开)
- php强制文件下载而非在浏览器打开的自定义函数分享
- php download.php实现代码 跳转到下载文件(response.redirect)
- php下载文件源代码(强制任意文件格式下载)
- PHP强制下载PDF文件的例子
- VC URLDownloadToFile 不能下载中文路径文件的解决办法
- 在Nginx中使用X-Sendfile头提升PHP文件下载的性能(针对大文件下载)