php 文件下载 出现下载文件内容乱码损坏的解决方法(推荐)


Posted in PHP onNovember 16, 2016

在做PHP程序时,需要使用PHP做的文件下载

那做就做呗把代码复制过来改了一改。

很多效果也出来了

那么点击下载后,恩,本以为搞定了文件下载,谁知道,图片打开的时候提示文件损坏,这我就观察了文件的大小。似乎真是多了 1KB左右。

使用PS打开,恩,提示了损坏,不过图象可以出来。

那么我就认为是 那多出来的 1kb的问题了。

然后,我把一个txt上传上去,然后下载.

果然发现,文件的前面以及后面,都多了几个 字符。

那我就在想应该怎么去掉啊.各种百度,谷歌,上论坛提问.

最后,经过我一个多小时的搜索,终于找到了解决办法.

代码如下

public function download()
{
  $upload=M('upload');
  $data=$upload->find($_GET['id']);

  if(empty($data)){
    header('HTTP/1.0 404 Not Found');
    header('Location: .');
  }else{

  $path='./public/Uploads/'.$data['savename'];

  header("Content-Type:".$data['type']);

  header('Content-Disposition: attachment; filename="'.$data['name'].'"');

  header('Content-Length:'.$data['size']);

  ob_clean();
  flush();

  readfile($path);

  }
}

注意:

ob_clean();
flush();这个是关键哦。用了这两函数,搞定,图片正常打开,文字也不乱码。

以上这篇php 文件下载 出现下载文件内容乱码损坏的解决方法(推荐)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
PHP4在Windows2000下的安装
Oct 09 PHP
php采集时被封ip的解决方法
Aug 29 PHP
如何用php获取文件名后缀
Jun 09 PHP
php中过滤非法字符的具体实现
Oct 29 PHP
php使用mb_check_encoding检查字符串在指定的编码里是否有效
Nov 07 PHP
php生成excel列名超过26列大于Z时的解决方法
Dec 29 PHP
php获取客户端电脑屏幕参数的方法
Jan 09 PHP
php微信公众平台开发类实例
Apr 01 PHP
PHP实现微信发红包程序
Aug 24 PHP
PHP微信红包生成代码分享
Oct 06 PHP
Laravel框架中Blade模板的用法示例
Aug 30 PHP
浅谈laravel框架sql中groupBy之后排序的问题
Oct 17 PHP
PHP Header失效的原因分析及解决方法
Nov 16 #PHP
php把时间戳转换成多少时间之前函数的实例
Nov 16 #PHP
php导出csv文件,可导出前导0实例代码
Nov 16 #PHP
PHP制作登录异常ip检测功能的实例代码
Nov 16 #PHP
php array_walk_recursive 使用自定的函数处理数组中的每一个元素
Nov 16 #PHP
Smarty模板常见的简单应用分析
Nov 15 #PHP
Smarty日期时间操作方法示例
Nov 15 #PHP
You might like
DC最新动画电影:《战争之子》为何内容偏激,毁了一个不错的漫画
2020/04/09 欧美动漫
php实现jQuery扩展函数
2009/10/30 PHP
PHP数据库链接类(PDO+Access)实例分享
2013/12/05 PHP
php实现的xml操作类
2016/01/15 PHP
PHP中file_put_contents追加和换行的实现方法
2017/04/01 PHP
js原生appendChild的bug解决心得分享
2013/07/01 Javascript
node.js中的http.response.getHeader方法使用说明
2014/12/14 Javascript
js 右侧浮动层效果实现代码(跟随滚动)
2015/11/22 Javascript
理解JavaScript中Promise的使用
2016/01/18 Javascript
全国省市二级联动下拉菜单 js版
2016/05/10 Javascript
JS+HTML5手机开发之滚动和惯性缓动实现方法分析
2016/06/12 Javascript
简单易懂的天气插件(代码分享)
2017/02/04 Javascript
element表格翻页第2页从1开始编号(后端从0开始分页)
2019/12/10 Javascript
[01:06]DOTA2隆重推出2016冬季勇士令状 内含上海特级锦标赛互动指南
2016/02/17 DOTA
[46:59]完美世界DOTA2联赛PWL S2 GXR vs Ink 第二场 11.19
2020/11/20 DOTA
Python的Django中django-userena组件的简单使用教程
2015/05/30 Python
利用Python-iGraph如何绘制贴吧/微博的好友关系图详解
2017/11/02 Python
在Pycharm中自动添加时间日期作者等信息的方法
2019/01/16 Python
Python进阶之全面解读高级特性之切片
2019/02/19 Python
解析python实现Lasso回归
2019/09/11 Python
解决python 读取excel时 日期变成数字并加.0的问题
2019/10/08 Python
使用卷积神经网络(CNN)做人脸识别的示例代码
2020/03/27 Python
python七种方法判断字符串是否包含子串
2020/08/18 Python
HTML5 Plus 实现手机APP拍照或相册选择图片上传功能
2016/07/13 HTML / CSS
HTML5 File接口在web页面上使用文件下载
2017/02/27 HTML / CSS
NEW LOOK官网:英国时装零售巨头之一,快时尚品牌
2017/01/11 全球购物
如何写好建议书
2014/03/13 职场文书
2014婚礼司仪主持词
2014/03/14 职场文书
信用社竞聘演讲稿
2014/05/16 职场文书
销售目标责任书
2014/07/23 职场文书
专题组织生活会发言材料
2014/10/17 职场文书
学生会辞职信
2015/03/02 职场文书
和谐拯救危机观后感
2015/06/15 职场文书
百年校庆感言
2015/08/01 职场文书
《折线统计图》教学反思
2016/02/22 职场文书
tensorflow中的梯度求解及梯度裁剪操作
2021/05/26 Python