background image

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

代码很简单,显示出的一直是这个

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();