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 相关文章推荐
常用表单验证类,有了这个,一般的验证就都齐了。
Dec 06 PHP
关于Intype一些小问题的解决办法
Mar 28 PHP
数据库中排序的对比及使用条件详解
Feb 23 PHP
php调用方法mssql_fetch_row、mssql_fetch_array、mssql_fetch_assoc和mssql_fetch_objcect读取数据的区别
Aug 08 PHP
windows下zendframework项目环境搭建(通过命令行配置)
Dec 06 PHP
thinkphp验证码显示不出来的解决方法
Mar 29 PHP
php实现遍历目录并删除指定文件中指定内容
Jan 21 PHP
PHP中常用的数组操作方法笔记整理
May 16 PHP
轻松掌握php设计模式之访问者模式
Sep 23 PHP
ThinkPHP中create()方法自动验证表单信息
Apr 28 PHP
[原创]php正则删除html代码中class样式属性的方法
May 24 PHP
thinkPHP框架实现的短信接口验证码功能示例
Jun 20 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
Eclipse中php插件安装及Xdebug配置的使用详解
2013/04/25 PHP
什么是OneThink oneThink后台添加插件步骤
2016/04/13 PHP
php array_pop 删除数组最后一个元素实例
2016/11/02 PHP
php实现统计二进制中1的个数算法示例
2018/01/23 PHP
关于删除时的提示处理(确定删除吗)
2013/11/03 Javascript
jQuery中[attribute!=value]选择器用法实例
2014/12/31 Javascript
js动态切换图片的方法
2015/01/20 Javascript
jQuery仿gmail实现fixed布局的方法
2015/05/27 Javascript
ANGULARJS中使用JQUERY分页控件
2015/09/16 Javascript
js window对象属性和方法相关资料整理
2015/11/11 Javascript
js表单提交和submit提交的区别实例分析
2015/12/10 Javascript
纯前端JavaScript实现Excel IO案例分享
2016/08/26 Javascript
手机浏览器 后退按钮强制刷新页面方法总结
2016/10/09 Javascript
浅析如何利用angular结合translate为项目实现国际化
2016/12/08 Javascript
JavaScript中动态向表格添加数据
2017/01/24 Javascript
大白话讲解JavaScript的Promise
2017/04/06 Javascript
angular4模块中给标签添加背景图的实现方法
2017/09/15 Javascript
jQuery Dom元素操作技巧
2018/02/04 jQuery
JS实现数组去重,显示重复元素及个数的方法示例
2019/01/21 Javascript
JavaScript数据结构与算法之二叉树遍历算法详解【先序、中序、后序】
2019/02/21 Javascript
解决layer.open弹出框不能获取input框的值为空的问题
2019/09/10 Javascript
webpack打包html里面img后src为“[object Module]”问题
2019/12/22 Javascript
wxpython中利用线程防止假死的实现方法
2014/08/11 Python
python进阶教程之循环对象
2014/08/30 Python
Python进阶篇之字典操作总结
2016/11/16 Python
Python并发编程协程(Coroutine)之Gevent详解
2017/12/27 Python
根据DataFrame某一列的值来选择具体的某一行方法
2018/07/03 Python
python排序函数sort()与sorted()的区别
2018/09/18 Python
python将视频转换为全字符视频
2019/04/26 Python
python实现按首字母分类查找功能
2019/10/31 Python
Python2 与Python3的版本区别实例分析
2020/03/30 Python
python爬取代理IP并进行有效的IP测试实现
2020/10/09 Python
普天C++笔试题
2016/03/20 面试题
12.4法制宣传日标语
2014/10/08 职场文书
实验室安全管理制度
2015/08/05 职场文书
Python Pandas解析读写 CSV 文件
2022/04/11 Python