php读取图片内容并输出到浏览器的实现代码


Posted in PHP onAugust 08, 2013

代码很简单,网上都能找到,但在我机子上就是显示不出来,显示出的一直是这个php文件路径,

费了点时间才搞定,原来是我的<?php这个标签前面有多的空格,删掉就ok了,细节问题,粗心得很,真的很无语。

网上查了下,有这样一说:
如果php以图片,zip,exe等文件输出到浏览器,而前面还输出了其他字符,那就会是你看到的乱码。
应该是输出图片前有输出空格或其他字符造成的,可以检查一下输出图片前有没有其他字符,
如果是utf-8编码记得保存为无BOM的文件。
相关代码如下:

class imgdata{
        public $imgsrc;
        public $imgdata;
        public $imgform;
        public function getdir($source){
                $this->imgsrc  = $source;
        }
        public function img2data(){
                $this->_imgfrom($this->imgsrc);
                return $this->imgdata=fread(fopen($this->imgsrc,'rb'),filesize($this->imgsrc));        
        }
        public function data2img(){
                header("content-type:$this->imgform");
                echo $this->imgdata;
                //echo $this->imgform;
                //imagecreatefromstring($this->imgdata);
        }
        public function _imgfrom($imgsrc){
                $info=getimagesize($imgsrc);
                //var_dump($info);
                return $this->imgform = $info['mime'];
        } 
}
$n = new imgdata;
$n -> getdir("1.jpg");
$n -> img2data();
$n -> data2img();

PHP 相关文章推荐
php不用正则采集速度探究总结
Mar 24 PHP
php生成数组的使用示例 php全组合算法
Jan 16 PHP
PHP的拦截器实例分析
Nov 03 PHP
php实现简单文件下载的方法
Jan 30 PHP
PHP实现加强版加密解密类实例
Jul 29 PHP
PHP使用PDO操作数据库的乱码问题解决方法
Apr 08 PHP
PHP大神的十大优良习惯
Sep 14 PHP
yii2实现分页,带搜索的分页功能示例
Jan 07 PHP
浅谈ThinkPHP中initialize和construct的区别
Apr 01 PHP
利用Laravel生成Gravatar头像地址的优雅方法
Dec 30 PHP
php处理抢购类功能的高并发请求
Feb 08 PHP
php使用curl伪造浏览器访问操作示例
Sep 30 PHP
php调用Google translate_tts api实现代码
Aug 07 #PHP
利用php+mcDropdown实现文件路径可在下拉框选择
Aug 07 #PHP
PHP生成验证码时“图像因其本身有错无法显示”的解决方法
Aug 07 #PHP
对于PHP 5.4 你必须要知道的
Aug 07 #PHP
php缓存技术详细总结
Aug 07 #PHP
IIS6.0中配置php服务全过程解析
Aug 07 #PHP
mcrypt启用 加密以及解密过程详细解析
Aug 07 #PHP
You might like
php之CodeIgniter学习笔记
2013/06/17 PHP
php实现两个数组相加的方法
2015/02/17 PHP
PHP安装memcached扩展笔记
2015/05/28 PHP
PHP实现的随机IP函数【国内IP段】
2016/07/20 PHP
ajax+php实现无刷新验证手机号的实例
2017/12/22 PHP
PHP中一个有趣的preg_replace函数详解
2018/08/15 PHP
PHP设计模式之数据访问对象模式(DAO)原理与用法实例分析
2019/12/12 PHP
基于jquery的时间段实现代码
2012/08/02 Javascript
js substring从右边获取指定长度字符串(示例代码)
2013/12/23 Javascript
JavaScript将Web页面内容导出到Word及Excel的方法
2015/02/13 Javascript
浅谈jQuery构造函数分析
2015/05/11 Javascript
Angular ng-repeat指令实例以及扩展部分
2016/12/26 Javascript
JavaScript通过filereader接口读取文件
2017/05/10 Javascript
Bootstrap下拉菜单更改为悬停(hover)触发的方法
2017/05/24 Javascript
详谈javascript精度问题与调整
2017/07/08 Javascript
js 发布订阅模式的实例讲解
2017/09/10 Javascript
webpack4.0 入门实践教程
2018/10/08 Javascript
js删除对象/数组中null、undefined、空对象及空数组方法示例
2018/11/14 Javascript
python 输出一个两行字符的变量
2009/02/05 Python
Python实现的基于优先等级分配糖果问题算法示例
2018/04/25 Python
详解Django+Uwsgi+Nginx的生产环境部署
2018/06/25 Python
使用Numpy读取CSV文件,并进行行列删除的操作方法
2018/07/04 Python
Python数据结构与算法(几种排序)小结
2019/06/22 Python
python模拟鼠标点击和键盘输入的操作
2019/08/04 Python
Django 拼接两个queryset 或是两个不可以相加的对象实例
2020/03/28 Python
如何基于python实现不邻接植花
2020/05/01 Python
详解Html5微信支付爬坑之路
2018/07/24 HTML / CSS
详解Html5原生拖拽操作
2018/01/12 HTML / CSS
加拿大在线旅游公司:Flighthub
2019/03/11 全球购物
毕业生自荐书
2013/12/18 职场文书
安全事故检讨书
2014/01/18 职场文书
八年级美术教学反思
2014/02/02 职场文书
售后服务承诺书范文
2014/03/26 职场文书
网吧七夕活动策划方案
2014/08/31 职场文书
PHP命令行与定时任务
2021/04/01 PHP
海贼王十大潜力果实,路飞仅排第十,第一可毁世界(震震果实)
2022/03/18 日漫