php实现当前页面点击下载文件的简单方法


Posted in PHP onSeptember 22, 2016

php控制器中代码

public function downFile($path = ''){
    if(!$path) header("Location: /");
    download($path);
  }

download文件下载函数代码

function download($file_url,$new_name=''){ 
    if(!isset($file_url)||trim($file_url)==''){ 
      echo '500'; 
    } 
    if(!file_exists($file_url)){ //检查文件是否存在 
      echo '404'; 
    } 
    $file_name=basename($file_url); 
    $file_type=explode('.',$file_url); 
    $file_type=$file_type[count($file_type)-1]; 
    $file_name=trim($new_name=='')?$file_name:urlencode($new_name); 
    $file_type=fopen($file_url,'r'); //打开文件 
    //输入文件标签 
    header("Content-type: application/octet-stream"); 
    header("Accept-Ranges: bytes"); 
    header("Accept-Length: ".filesize($file_url)); 
    header("Content-Disposition: attachment; filename=".$file_name); 
    //输出文件内容 
    echo fread($file_type,filesize($file_url)); 
    fclose($file_type);
}

html代码

<iframe id="iframe" src="" style="display: none;"></iframe>
$(function(){
      $('.downLoad').click(function(){
        var path = $(this).attr('path');
        $('#iframe').attr('src',"php文件路径?path="+path);
      })
    })

把上面的代码,分别放到你的程序中执行就可以了。

以上就是小编为大家带来的php实现当前页面点击下载文件的简单方法的全部内容了,希望对大家有所帮助,多多支持三水点靠木~

PHP 相关文章推荐
新版PHP将向Java靠拢
Oct 09 PHP
PHP安装全攻略:APACHE
Oct 09 PHP
第十三节--对象串行化
Nov 16 PHP
网页游戏开发入门教程二(游戏模式+系统)
Nov 02 PHP
说说PHP的autoLoad自动加载机制
Sep 27 PHP
php计算一个文件大小的方法
Mar 30 PHP
php检查是否是ajax请求的方法
Apr 16 PHP
WIN8.1下搭建PHP5.6环境
Apr 29 PHP
php简单复制文件的方法
May 09 PHP
PHP获取文本框、密码域、按钮的值实例代码
Apr 19 PHP
PHP在同一域名下两个不同的项目做独立登录机制详解
Sep 22 PHP
laravel 解决groupBy时出现的错误 isn't in Group By问题
Oct 17 PHP
php下载文件,添加响应头的简单实例
Sep 22 #PHP
php实现微信扫码自动登陆与注册功能
Sep 22 #PHP
php版微信公众号自定义分享内容实现方法
Sep 22 #PHP
php版微信公众平台接口开发之智能回复开发教程
Sep 22 #PHP
PHP判断用户是否已经登录(跳转到不同页面或者执行不同动作)
Sep 22 #PHP
PHP查看SSL证书信息的方法
Sep 22 #PHP
php版微信自动获取收货地址api用法示例
Sep 22 #PHP
You might like
在Windows中安装Apache2和PHP4的权威指南
2006/10/09 PHP
PHP的FTP学习(三)
2006/10/09 PHP
解析php二分法查找数组是否包含某一元素
2013/05/23 PHP
php实现转换ubb代码的方法
2015/06/18 PHP
简单实现php上传文件功能
2017/09/21 PHP
javascript+css 网页每次加载不同样式的实现方法
2009/12/27 Javascript
jQuery图片预加载 等比缩放实现代码
2011/10/04 Javascript
在JS中解析HTML字符串示例代码
2014/04/16 Javascript
JS实现模拟风力的雪花飘落效果
2015/05/13 Javascript
JS模仿编辑器实时改变文本框宽度和高度大小的方法
2015/08/17 Javascript
Javascript实现商品秒杀倒计时(时间与服务器时间同步)
2015/09/16 Javascript
gulp-uglify 与gulp.watch()配合使用时报错(重复压缩问题)
2016/08/24 Javascript
javascript实现消灭星星小游戏简单版
2016/11/15 Javascript
js事件源window.event.srcElement兼容性写法(详解)
2016/11/25 Javascript
微信小程序实现鼠标拖动效果示例
2017/12/01 Javascript
基于substring()和substr()的使用以及区别(实例讲解)
2017/12/28 Javascript
vue源码入口文件分析(推荐)
2018/01/30 Javascript
Vue中render函数的使用方法
2018/01/31 Javascript
原生js实现拖拽功能基本思路详解
2018/04/18 Javascript
vue实现节点增删改功能
2019/09/26 Javascript
原生javascript单例模式的应用实例分析
2020/02/23 Javascript
JavaScript中的this基本问题实例小结
2020/03/09 Javascript
在vue中使用防抖函数组件操作
2020/07/26 Javascript
Python采用socket模拟TCP通讯的实现方法
2014/11/19 Python
详解Python中 sys.argv[]的用法简明解释
2017/12/20 Python
python版飞机大战代码分享
2018/11/20 Python
Matplotlib绘制雷达图和三维图的示例代码
2020/01/07 Python
如何用 Python 制作一个迷宫游戏
2021/02/25 Python
新西兰演唱会和体育门票网站:Ticketmaster新西兰
2017/10/07 全球购物
英国折扣零售连锁店:QD Stores
2018/12/08 全球购物
Java里面StringBuilder和StringBuffer有什么区别
2016/06/06 面试题
军训心得体会
2013/12/31 职场文书
2015年幼儿园学前班工作总结
2015/05/18 职场文书
升学宴学生致辞
2015/07/27 职场文书
2015年度女工工作总结
2015/10/22 职场文书
Vue中Object.assign清空数据报错的解决方案
2022/03/03 Vue.js