解析PHP实现下载文件的两种方法


Posted in PHP onJuly 05, 2013

方法一:

 header('Content-Description: File Transfer');
 header('Content-Type: application/octet-stream');
 header('Content-Disposition: attachment; filename='.basename($filepath));
 header('Content-Transfer-Encoding: binary');
 header('Expires: 0′);
 header('Cache-Control: must-revalidate, post-check=0, pre-check=0′);
 header('Pragma: public');
 header('Content-Length: ' . filesize($filepath));
 readfile($file_path);

方法二:
 $fileinfo = pathinfo($filename);
 header('Content-type: application/x-'.$fileinfo['extension']);
 header('Content-Disposition: attachment; filename='.$fileinfo['basename']);
 header('Content-Length: '.filesize($filename));
 readfile($thefile);
 exit();
PHP 相关文章推荐
ThinkPHP中的系统常量和预定义常量集合
Jul 01 PHP
php实现的DateDiff和DateAdd时间函数代码分享
Aug 16 PHP
PHP中使用asort进行中文排序失效的问题处理
Aug 18 PHP
php实现文件下载代码分享
Aug 19 PHP
PHP中使用Imagick操作PSD文件实例
Jan 26 PHP
php单文件版在线代码编辑器
Mar 12 PHP
php实现通用的信用卡验证类
Mar 24 PHP
ThinkPHP函数详解之M方法和R方法
Sep 10 PHP
thinkphp3.x自定义Action、Model及View的简单实现方法
May 19 PHP
微信支付开发交易通知实例
Jul 12 PHP
thinkPHP中验证码的简单实现方法
Dec 05 PHP
解决php extension 加载顺序问题
Aug 16 PHP
国外十大最流行的PHP框架排名
Jul 04 #PHP
php字符串截取的简单方法
Jul 04 #PHP
解析:php调用MsSQL存储过程使用内置RETVAL获取过程中的return值
Jul 03 #PHP
php调用MySQL存储过程的方法集合(推荐)
Jul 03 #PHP
解决php使用异步调用获取数据时出现(错误c00ce56e导致此项操作无法完成)
Jul 03 #PHP
解决PHP mysql_query执行超时(Fatal error: Maximum execution time …)
Jul 03 #PHP
处理(php-cgi.exe - FastCGI 进程超过了配置的请求超时时限)的问题
Jul 03 #PHP
You might like
用Zend Encode编写开发PHP程序
2010/02/21 PHP
php实现基于微信公众平台开发SDK(demo)扩展的方法
2014/12/22 PHP
PHP远程调试之XDEBUG
2015/12/29 PHP
PHP使用反射机制实现查找类和方法的所在位置
2016/04/22 PHP
详解配置 Apache 服务器支持 PHP 文件的解析
2017/02/15 PHP
PHP实现的策略模式简单示例
2017/08/25 PHP
ThinkPHP3.2.3框架Memcache缓存使用方法实例总结
2019/04/15 PHP
JS写的数字拼图小游戏代码[学习参考]
2008/10/29 Javascript
js弹出的对话窗口永远保持居中显示
2012/12/15 Javascript
Vue.js学习之过滤器详解
2017/01/22 Javascript
Javascript实现从小到大的数组转换成二叉搜索树
2017/06/13 Javascript
JSON数据中存在单个转义字符“\”的处理方法
2018/07/11 Javascript
Phaser.js实现简单的跑酷游戏附源码下载
2018/10/26 Javascript
Emberjs 通过 axios 下载文件的方法
2019/09/03 Javascript
js模拟实现百度搜索
2020/06/28 Javascript
vue解决跨域问题(推荐)
2020/11/10 Javascript
swiperjs实现导航与tab页的联动
2020/12/13 Javascript
[54:09]RNG vs Liquid 2019国际邀请赛淘汰赛 败者组 BO3 第一场 8.23
2019/09/05 DOTA
Python实现从URL地址提取文件名的方法
2015/05/15 Python
200行自定义python异步非阻塞Web框架
2017/03/15 Python
Python实现曲线点抽稀算法的示例
2017/10/12 Python
tensorflow 输出权重到csv或txt的实例
2018/06/14 Python
pytorch 调整某一维度数据顺序的方法
2018/12/08 Python
Python 字符串、列表、元组的截取与切片操作示例
2019/09/17 Python
Python全面分析系统的时域特性和频率域特性
2020/02/26 Python
CSS3 倾斜的网页图片库实例教程
2009/11/14 HTML / CSS
HTML5 Canvas——用路径描画线条实例介绍
2013/06/09 HTML / CSS
Expedia法国:全球最大在线旅游公司
2018/09/30 全球购物
美国值得信赖的婚恋交友网站:eHarmony
2018/10/04 全球购物
运动会800米加油稿
2014/02/22 职场文书
2014大学生全国两会学习心得体会
2014/03/13 职场文书
工伤事故赔偿协议书
2014/04/15 职场文书
社区优秀志愿者先进事迹
2014/05/09 职场文书
本科毕业生自荐信
2014/05/26 职场文书
大学生学习计划书
2014/09/15 职场文书
大学生心理健康教育心得体会
2016/01/12 职场文书