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


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 MVC留言本实例代码(必看篇)
摘要标题上我把这个留言板叫最简单的,其实应该叫最简陋的,因为把全部注意力集中在MVC模式设计和实现上,所以UI方面几乎没有一点修饰。这个小程

thinkphp跨库操作的简单代码实例
实例一:配置config.php文件配置多个数据库配置'DB_CONFIG2'='mysql://root:1234@localhost:3306/thinkphp',控制器中调用方法:$New=M('表名','前缀没前缀不填写','DB_CONFIG2'

php的api数据接口书写实例(推荐)
以下是接口代码实例:php$output=array();$a=@$_GET['a']$_GET['a']:'';$uid=@$_GET['uid']$_GET['uid']:0;if(empty($a)){$output=array('data'=NULL,'info'='坑爹啊!','code'=-201);exit(json_encode(