解析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 相关文章推荐
用PHP和ACCESS写聊天室(五)
Oct 09 PHP
我用php+mysql写的留言本
Oct 09 PHP
php select,radio和checkbox默认选择的实现方法
May 15 PHP
PHP中将数组转成XML格式的实现代码
Aug 08 PHP
php 在windows下配置虚拟目录的方法介绍
Jun 26 PHP
解析PHP实现下载文件的两种方法
Jul 05 PHP
wordpress自定义url参数实现路由功能的代码示例
Nov 28 PHP
PHP连接MySQL的2种方法小结以及防止乱码
Mar 11 PHP
php通过文件头判断格式的方法
May 28 PHP
PHP实现的方程求解示例分析
Nov 11 PHP
YII2框架中查询生成器Query()的使用方法示例
Mar 18 PHP
aec加密 php_php aes加密解密类(兼容php5、php7)
Mar 14 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 操作调试的方法
2012/07/12 PHP
PHP面向对象——访问修饰符介绍
2012/11/08 PHP
php将gd生成的图片缓存到memcache的小例子
2013/06/05 PHP
YII框架实现自定义第三方扩展操作示例
2019/04/26 PHP
thinkphp5使html5实现动态跳转的例子
2019/10/16 PHP
Javascript 读书笔记索引贴
2010/01/11 Javascript
javascript 获取url参数和script标签中获取url参数函数代码
2010/01/22 Javascript
实现变速回到顶部的JavaScript代码
2011/05/09 Javascript
JavaScript中的Truthy和Falsy介绍
2015/01/01 Javascript
jquery中animate的stop()方法作用实例分析
2015/01/30 Javascript
jquery实现鼠标滑过显示二级下拉菜单效果
2015/08/24 Javascript
jquery实现可点击伸缩与展开的菜单效果代码
2015/08/31 Javascript
jQuery+CSS3折叠卡片式下拉列表框实现效果
2015/11/02 Javascript
Angular在模板驱动表单中自定义校验器的方法
2017/08/09 Javascript
基于Bootstrap框架菜鸟入门教程(推荐)
2017/09/17 Javascript
浅谈es6 javascript的map数据结构
2017/12/14 Javascript
Vue+jquery实现表格指定列的文字收缩的示例代码
2018/01/09 jQuery
vue富文本框(插入文本、图片、视频)的使用及问题小结
2018/08/17 Javascript
Vue文件配置全局变量的实例
2018/09/06 Javascript
vuedraggable+element ui实现页面控件拖拽排序效果
2020/07/29 Javascript
微信小程序如何实现全局重新加载
2019/06/05 Javascript
Vue 2.0双向绑定原理的实现方法
2019/10/23 Javascript
js 数组当前行添加数据方法详解
2020/07/28 Javascript
python实现绘制树枝简单示例
2014/07/24 Python
10 行 Python 代码教你自动发送短信(不想回复工作邮件妙招)
2018/10/11 Python
Python多线程应用于自动化测试操作示例
2018/12/06 Python
CSS3教程(3):border-color网页边框色彩
2009/04/02 HTML / CSS
详解css3 Transition属性(平滑过渡菜单栏案例)
2017/09/05 HTML / CSS
HTML5中的进度条progress元素简介及兼容性处理
2016/06/02 HTML / CSS
台湾线上百货零售购物平台:friDay购物
2017/08/18 全球购物
迪士尼西班牙官方网上商店:ShopDisney西班牙
2020/02/02 全球购物
函授教育个人学习的自我评价
2013/12/31 职场文书
毕业设计计划书
2014/01/09 职场文书
专题组织生活会方案
2014/06/15 职场文书
Python WSGI 规范简介
2021/04/11 Python
vue报错function () { [native code] },无法出现我们想要的内容 Unknown custom element
2022/04/11 Vue.js