最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

php下载文件出现乱码怎么解决

来源:懂视网 责编:小采 时间:2020-11-27 14:00:20
文档

php下载文件出现乱码怎么解决

php下载文件出现乱码怎么解决:php下载文件出现乱码的解决方法:首先在下载文件之前使用ob_clean函数清空输出缓冲区;然后利用flush函数刷新输出缓冲;最后下载文件即可。解决方法:下载之前先使用如下两个函数进行处理即可。(推荐教程:java课程)flush — 刷新输出缓冲ob_clean
推荐度:
导读php下载文件出现乱码怎么解决:php下载文件出现乱码的解决方法:首先在下载文件之前使用ob_clean函数清空输出缓冲区;然后利用flush函数刷新输出缓冲;最后下载文件即可。解决方法:下载之前先使用如下两个函数进行处理即可。(推荐教程:java课程)flush — 刷新输出缓冲ob_clean

解决方法:

下载之前先使用如下两个函数进行处理即可。

(推荐教程:java课程)

flush — 刷新输出缓冲

ob_clean — 清空(擦掉)输出缓冲区

此函数用来丢弃输出缓冲区中的内容。

此函数不会销毁输出缓冲区,而像 ob_end_clean() 函数会销毁输出缓冲区。

代码示例:

// 文件名不要用中文//fname为要下载的文件名
 //$fpath为下载文件所在文件夹,默认是downlod
 function download($fname,$fpath="download/"){ //避免中文文件名出现检测不到文件名的情况,进行转码utf-8->gbk
 $filename=iconv('utf-8', 'gb2312', $fname); $path=$fpath.$filename; if(!file_exists($path)){//检测文件是否存在
 echo "文件不存在!"; die();
 } $fp=fopen($path,'r');//只读方式打开
 $filesize=filesize($path);//文件大小

 //返回的文件(流形式)
 header("Content-type: application/octet-stream"); //按照字节大小返回
 header("Accept-Ranges: bytes"); //返回文件大小
 header("Accept-Length: $filesize"); //这里客户端的弹出对话框,对应的文件名
 header("Content-Disposition: attachment; filename=".$filename); //================重点====================
 ob_clean();
 flush(); //=================重点===================
 //设置分流
 $buffer=1024; //来个文件字节计数器
 $count=0; while(!feof($fp)&&($filesize-$count>0)){ $data=fread($fp,$buffer); $count+=$data;//计数
 echo $data;//传数据给浏览器端
 }

 fclose($fp);

 }


 download("CGEX脚本清单.doc");

文档

php下载文件出现乱码怎么解决

php下载文件出现乱码怎么解决:php下载文件出现乱码的解决方法:首先在下载文件之前使用ob_clean函数清空输出缓冲区;然后利用flush函数刷新输出缓冲;最后下载文件即可。解决方法:下载之前先使用如下两个函数进行处理即可。(推荐教程:java课程)flush — 刷新输出缓冲ob_clean
推荐度:
标签: 下载 文件 乱码
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top