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 相关文章推荐
使用 eAccelerator加速PHP代码的目的
Mar 16 PHP
PHP和Mysqlweb应用开发核心技术-第1部分 Php基础-2 php语言介绍
Jul 03 PHP
php计算十二星座的函数代码
Aug 21 PHP
php警告Creating default object from empty value 问题的解决方法
Apr 02 PHP
PHP积分兑换接口实例
Feb 09 PHP
php查询mysql大量数据造成内存不足的解决方法
Mar 04 PHP
PHP统计数值数组中出现频率最多的10个数字的方法
Apr 20 PHP
CI框架中$this-&gt;load-&gt;library()用法分析
May 18 PHP
Redis构建分布式锁
Mar 28 PHP
php微信公众号开发之微信企业付款给个人
Oct 04 PHP
PHP类的自动加载机制实现方法分析
Jan 10 PHP
PHP7使用ODBC连接SQL Server2008 R2数据库示例【基于thinkPHP5.1框架】
May 06 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预定义常量
2006/12/25 PHP
使ecshop模板中可引用常量的实现方法
2011/06/02 PHP
PHP优于Node.js的五大理由分享
2012/09/15 PHP
PHP页面间参数传递的四种方法详解
2013/06/09 PHP
php实现mysql数据库连接操作及用户管理
2015/11/08 PHP
php is_executable判断给定文件名是否可执行实例
2016/09/26 PHP
laravel自定义分页效果
2017/07/23 PHP
Laravel框架基础语法与知识点整理【模板变量、输出、include引入子视图等】
2019/12/03 PHP
ExtJs的Date格式字符代码
2010/12/30 Javascript
教你如何使用node.js制作代理服务器
2014/11/26 Javascript
js实现iframe框架取值的方法(兼容IE,firefox,chrome等)
2015/11/26 Javascript
js中获取jsp表单中radio类型的值简单实例
2016/08/15 Javascript
详解jQuery停止动画——stop()方法的使用
2016/12/14 Javascript
JS多文件上传的实例代码
2017/01/11 Javascript
JS日程管理插件FullCalendar中文说明文档
2017/02/06 Javascript
VUE实现一个分页组件的示例
2017/09/13 Javascript
Angular中使用ng-zorro图标库部分图标不能正常显示问题
2019/04/22 Javascript
vue中keep-alive,include的缓存问题
2019/11/26 Javascript
详解vue-template-admin三级路由无法缓存的解决方案
2020/03/10 Javascript
解决VUE自定义拖拽指令时 onmouseup 与 click事件冲突问题
2020/07/24 Javascript
vue移动端写的拖拽功能示例代码
2020/09/09 Javascript
[01:20]DOTA2更新全新英雄 天涯墨客现已加入游戏
2018/08/25 DOTA
[54:19]完美世界DOTA2联赛PWL S2 Magma vs PXG 第二场 11.28
2020/12/01 DOTA
python中numpy包使用教程之数组和相关操作详解
2017/07/30 Python
python tkinter界面居中显示的方法
2018/10/11 Python
python使用 zip 同时迭代多个序列示例
2019/07/06 Python
python实现扫雷小游戏
2020/04/24 Python
酒店个人培训自我鉴定
2013/12/11 职场文书
高中化学教学反思
2014/01/13 职场文书
小小的船教学反思
2014/02/21 职场文书
婚前协议书怎么写
2014/04/15 职场文书
《金色的脚印》教后反思
2014/04/23 职场文书
大学生个人简历自我评价
2015/03/11 职场文书
中国文明网2015年“向国旗敬礼”活动网上签名寄语
2015/09/24 职场文书
煤矿施工安全协议书
2016/03/22 职场文书
mysql 数据插入优化方法之concurrent_insert
2021/07/01 MySQL