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设计模式之装饰者模式
Feb 29 PHP
PHP调用MsSQL Server 2012存储过程获取多结果集(包含output参数)的详解
Jul 03 PHP
php 判断是否是中文/英文/数字示例代码
Sep 30 PHP
smarty获得当前url的方法分享
Feb 14 PHP
PHP遍历文件夹与文件类及处理类用法实例
Sep 23 PHP
php中base_convert()进制数字转换函数实例
Nov 20 PHP
解决nginx不支持thinkphp中pathinfo的问题
Jul 21 PHP
CI框架源码解读之利用Hook.php文件完成功能扩展的方法
May 18 PHP
根据key删除数组中指定的元素实现方法
Mar 02 PHP
PHP文件管理之实现网盘及压缩包的功能操作
Sep 20 PHP
PHP实现将多个文件压缩成zip格式并下载到本地的方法示例
May 23 PHP
对laravel的csrf 防御机制详解,及form中csrf_token()的存在介绍
Oct 24 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
php mssql 数据库分页SQL语句
2008/12/16 PHP
PHP 字符串 小常识
2009/06/05 PHP
PHP正则匹配到2个字符串之间的内容方法
2018/12/24 PHP
PHP中抽象类,接口功能、定义方法示例
2019/02/26 PHP
Javascript 面试题随笔
2011/03/31 Javascript
window.addEventListener来解决让一个js事件执行多个函数
2012/12/26 Javascript
js获取键盘按键响应事件(兼容各浏览器)
2013/05/16 Javascript
浅析JavaScript中的同名标识符优先级
2013/12/06 Javascript
浅谈jQuery中 wrap() wrapAll() 与 wrapInner()的差异
2014/11/12 Javascript
javascript实现跨域的方法汇总
2015/06/25 Javascript
JavaScript实现基于十进制的四舍五入实例
2015/07/17 Javascript
JavaScript+html5 canvas绘制渐变区域完整实例
2016/01/26 Javascript
Vue2.0使用过程常见的一些问题总结学习
2017/04/10 Javascript
基于Vue.js实现tab滑块效果
2017/07/23 Javascript
vue-cli webpack 引入jquery的方法
2018/01/10 jQuery
理顺8个版本vue的区别(小结)
2018/09/17 Javascript
基于vue-cli搭建多模块且各模块独立打包的项目
2019/06/12 Javascript
关于ckeditor在bootstrap中modal中弹框无法输入的解决方法
2019/09/11 Javascript
extjs4图表绘制之折线图实现方法分析
2020/03/06 Javascript
python随机数分布random测试
2018/08/27 Python
windows7 32、64位下python爬虫框架scrapy环境的搭建方法
2018/11/29 Python
Python 3 判断2个字典相同
2019/08/06 Python
python进阶之自定义可迭代的类
2019/08/20 Python
如何用tempfile库创建python进程中的临时文件
2021/01/28 Python
深入浅析css3 中display box使用方法
2015/11/25 HTML / CSS
HTML5实现无刷新修改URL的方法
2019/11/14 HTML / CSS
幼儿园老师辞职信
2014/01/20 职场文书
客服部班长工作责任制
2014/02/25 职场文书
政府门卫岗位职责
2014/04/29 职场文书
英语专业毕业生求职信
2014/05/24 职场文书
集体生日活动方案
2014/08/18 职场文书
2014年营销工作总结
2014/11/22 职场文书
2015试用期转正工作总结
2014/12/12 职场文书
2016年秋季新学期致辞
2015/07/30 职场文书
对PyTorch中inplace字段的全面理解
2021/05/22 Python
深入解析Apache Hudi内核文件标记机制
2022/03/31 Servers