解析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 相关文章推荐
一个简单的域名注册情况查询程序
Oct 09 PHP
PHP程序员编程注意事项
Apr 10 PHP
php获取$_POST同名参数数组的实现介绍
Jun 30 PHP
php网站判断用户是否是手机访问的方法
Nov 01 PHP
PHP在网页中动态生成PDF文件详细教程
Jul 05 PHP
CentOS 6.3下安装PHP xcache扩展模块笔记
Sep 10 PHP
Laravel 5框架学习之环境与配置
Apr 08 PHP
PHP中Closure类的使用方法及详解
Oct 09 PHP
是 WordPress 让 PHP 更流行了 而不是框架
Feb 03 PHP
今天你说520了吗?不仅有php表白书还有java表白神器
May 20 PHP
PHP实现数组array转换成xml的方法
Jul 19 PHP
Thinkphp5 自定义上传文件名的实现方法
Jul 23 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
php实现的漂亮分页方法
2014/04/17 PHP
PHP长连接实现与使用方法详解
2018/02/11 PHP
PHP PDOStatement::fetch讲解
2019/01/31 PHP
TP3.2.3框架使用CKeditor编辑器在页面中上传图片的方法分析
2019/12/31 PHP
javascript innerHTML、outerHTML、innerText、outerText的区别
2008/11/24 Javascript
jQuery-ui中自动完成实现方法
2010/06/10 Javascript
CSS和Javascript简单复习资料
2010/06/29 Javascript
打豆豆小游戏 用javascript编写的[打豆豆]小游戏
2013/01/08 Javascript
抛弃Nginx使用nodejs做反向代理服务器
2014/07/17 NodeJs
基于javascript、ajax、memcache和PHP实现的简易在线聊天室
2015/02/03 Javascript
jQuery+css3实现Ajax点击后动态删除功能的方法
2015/08/10 Javascript
JS使用onerror捕获异常示例
2016/08/03 Javascript
JavaScript对象引用与赋值实例详解
2017/03/15 Javascript
js oncontextmenu事件使用详解
2017/03/25 Javascript
详解如何在 vue 项目里正确地引用 jquery 和 jquery-ui的插件
2017/06/01 jQuery
详细介绍RxJS在Angular中的应用
2017/09/23 Javascript
微信小程序实现批量倒计时功能
2020/11/01 Javascript
angularjs请求数据的方法示例
2019/08/06 Javascript
基于ts的动态接口数据配置的详解
2019/12/18 Javascript
vue全局使用axios的操作
2020/09/08 Javascript
python操作数据库之sqlite3打开数据库、删除、修改示例
2014/03/13 Python
Python SqlAlchemy动态添加数据表字段实例解析
2018/02/07 Python
Python机器学习之K-Means聚类实现详解
2018/02/22 Python
Python实现的生产者、消费者问题完整实例
2018/05/30 Python
Python实现获取本地及远程图片大小的方法示例
2018/07/21 Python
深入了解和应用Python 装饰器 @decorator
2019/04/02 Python
python3模拟实现xshell远程执行liunx命令的方法
2019/07/12 Python
PyTorch 随机数生成占用 CPU 过高的解决方法
2020/01/13 Python
pytorch 使用加载训练好的模型做inference
2020/02/20 Python
浅谈keras 的抽象后端(from keras import backend as K)
2020/06/16 Python
详解html2canvas截图不能截取圆角图片的解决方案
2018/01/30 HTML / CSS
外贸公司实习自我鉴定
2013/09/24 职场文书
制药工程专业个人求职自荐信
2014/01/25 职场文书
文化建设工作方案
2014/05/12 职场文书
感恩教师节演讲稿
2014/09/03 职场文书
学校领导班子群众路线整改措施
2014/09/16 职场文书