温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

PHP下载文件

发布时间:2020-07-27 23:37:39 来源:网络 阅读:452 作者:771541213 栏目:web开发
    public function down()
    {

        $run_id=I("run_id"); //流程实例ID
        $pinyin=I("pinyin"); //字段拼音码

        $w["run_id"]=array("EQ",$run_id);
        //查询流程实例数据信息
        $v=$this->runModel->where($w)->find();
        //业务标识key
        $archivesid=$v["archivesid"];
        //查询附加表
        $table_name= $this->typeModel->where("flow_id=".$v["flow_id"])->getField("table_name");
        //查询附件路径地址
        $path = D($table_name)->where("archivesid=".$archivesid)->getField($pinyin);
        
        //分割路径
        $arr= explode("/",$path);
        //计算最后个索引值
        $len=count($arr)-1;
        //文件名
        $fileName=$arr[$len];

        //与下载文件建立连接 连接数据传输管道 r代表只读
        $file = fopen ($path,"r"); 

        //告诉浏览器这是一个文件流格式的文件    
        Header ( "Content-type: application/octet-stream" ); 
        //请求范围的度量单位  
        Header ( "Accept-Ranges: bytes" );
        //用来告诉浏览器,文件是可以当做附件被下载,下载后的文件名称为$file_name该变量的值。
        Header ( "Content-Disposition: attachment; filename=".$fileName); 
        //Content-Length是指定包含于请求或响应中数据的字节长度    
        Header ( "Accept-Length: " . filesize($path));  

        //读取文件内容并直接输出到浏览器    
        echo fread ( $file,filesize ($path) );    
        fclose ($file);    
        exit ();    
    }


向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI