我是靠谱客的博主 着急未来,最近开发中收集的这篇文章主要介绍PHP头文件下载文件的小坑,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

    function downLoad(){
           $path = './static/zhan/uploads/head/201708311617012941.png';
           $filename = '我的文件.png'; // 文件名
           //下面是输出下载;
           header("Cache-Control: max-age=0");
           header("Content-Description: File Transfer");
           header('Content-disposition: attachment; filename=' . basename($filename )); // 文件名
           header('Content-Type: application/octet-stream');   //设置为一个下载类型  
           header("Content-Transfer-Encoding: binary"); // 告诉浏览器,这是二进制文件
           header('Content-Length: ' . filesize($path)); // 告诉浏览器,文件大小
           @readfile($path); //输出文件;
       }

这段代码测试过正常的,之前
$path ='http://xxx/./static/zhan/uploads/head/201708311617012941.png'; 是写成这样的,导致下载下来的文件无法正常打开,之前以为是文件大小原因,最后发现我把header('Content-Length: ' . filesize($path));这句注释掉,居然可以正常打开文件了,最后才知道filesize($path)不需要加域名

其他header函数之设置content-type

最后

以上就是着急未来为你收集整理的PHP头文件下载文件的小坑的全部内容,希望文章能够帮你解决PHP头文件下载文件的小坑所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(40)

评论列表共有 0 条评论

立即
投稿
返回
顶部