Home > Backend Development > PHP Tutorial > PHP获取缓存图片时页面上显示乱码信息,

PHP获取缓存图片时页面上显示乱码信息,

WBOY
Release: 2016-06-23 13:31:00
Original
976 people have browsed it

PHP新手,求助大家,我用开源的PHP QR Code生成二维码图片缓存在本地文件夹,去读取时,页面上报了一堆乱码的错误提示,应该是PHP的提示信息,不知道怎么去解决。

读写二维码图片的代码

//读缓存function read_qrcode_cache($filename){    $result = array();    if (!empty($result[$filename])) {        return $result[$filename];    }    $filepath = PHPMPS_ROOT . 'data/qrcodecache/' . $filename;    if (file_exists($filepath)) {        include_once($filepath);        $result[$filename] = $data;        return $result[$filename];    } else {        return false;    }}//写入缓存function write_qrcode_cache($filename, $val){	$errorCorrectionLevel = 'L';//容错级别   	$matrixPointSize = 4;//生成图片大小  		$filepath = PHPMPS_ROOT . 'data/qrcodecache/' . $filename;	QRcode::png($val, $filepath, $errorCorrectionLevel, $matrixPointSize, 0); }//调用缓存函数的代码	$value = 'BEGIN:VCARDVERSION:3.0N:' . $info['title'] . 'TEL:0575-87238712TEL;CELL:18969558900ORG:' . $info['title'] . 'END:VCARD';	$filename = md5($value).'.png';		$data = read_qrcode_cache($filename);	if ($data === false) {		write_qrcode_cache($filename,$value);	}		$info['Qrcode'] = $CFG['weburl'] . '/data/qrcodecache/' . $filename;
Copy after login


报的错误信息:

谢谢~~


回复讨论(解决方案)

你那不是错误信息,而是 png 图片数据流
图片要用 img 标记显示,直接输出的浏览器自然是乱码了

你那不是错误信息,而是 png 图片数据流
图片要用 img 标记显示,直接输出的浏览器自然是乱码了


先谢谢版主的回答,我是通过img标签输出的,
PHP获取缓存图片时页面上显示乱码信息,图片也能在页面正常的显示

$info['Qrcode'] 是 文件名
显然你还在哪里直接输出了图片内容

$info['Qrcode'] 是 文件名
显然你还在哪里直接输出了图片内容


噢,那请问这个要怎么去处理的

function read_qrcode_cache($filename)
{
    $result = array();
    if (!empty($result[$filename])) {
        return $result[$filename];
    }
    $filepath = PHPMPS_ROOT . 'data/qrcodecache/' . $filename;
    if (file_exists($filepath)) {
         include_once($filepath); 去掉这行
        $result[$filename] = $data;
        return $result[$filename];
    } else {
        return false;
    }
}

function read_qrcode_cache($filename)
{
    $result = array();
    if (!empty($result[$filename])) {
        return $result[$filename];
    }
    $filepath = PHPMPS_ROOT . 'data/qrcodecache/' . $filename;
    if (file_exists($filepath)) {
         include_once($filepath); 去掉这行
        $result[$filename] = $data;
        return $result[$filename];
    } else {
        return false;
    }
}


确实是这个引起的,基础不扎实,谢谢版主了。
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template