PHP里面把16进制的图片数据显示在html的img标签上(实现方法)

yipeiwu_com5年前PHP代码库

客户公司的SQLServer2008的一个生产数据库才1年多就高达18G之巨,原来是系统里面的图片直接以16进制字符串的形式存储在数据库的。要用PHP显示在html页面上,我还耗费了不上时间。

<?php

// 从数据库读出来的:图片的十六进制形式字符串
$icon_hex = '89504e470d0a1a0a0000000d494844520000001c00000012010300000072c92ca'
    .'700000006504c5445000000ffffffa5d99fdd0000003f49444154089963603e6f60c000266cce1'
    .'b1f8010cc07406220c2febcf10724e2ffe7ff7082f90303e76466062061ccc0603999d90048d81'
    .'b30d809f3400800c0921ea36f9b656d0000000049454e44ae426082';
$imgdata = base64_encode(pack('H*',$icon_hex));
echo '<img src="data:image/png;base64,'. $imgdata .'" />';

?>

参考资料:http://php.net/manual/en/function.imagecreatefromstring.php   base64转成图片

注意的一点是:在img标签显示时,一定要加文件头说明:"data:image/png;base64,",这个地方弄了我好久。

以上这篇PHP里面把16进制的图片数据显示在html的img标签上(实现方法)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【宜配屋www.yipeiwu.com】。

相关文章

PHP里的$_GET数组介绍

在开发过程中,GET和POST无处不在。$_GET 变量是一个数组,内容是由 HTTP GET 方法发送的变量名称和值。 $_GET 变量用于收集来自 method="get" 的表单中...

php使用curl获取header检测开启GZip压缩的方法

本文实例讲述了php使用curl获取header检测开启GZip压缩的方法。分享给大家供大家参考,具体如下: 获得网页header信息,是网站开发人员和维护人员常用的技术。网页的head...

浅析php中array_map和array_walk的使用对比

一、array_map()      1、array_map() 函数将用户自定义函数作用到数组中的每个值上,并返回用户自定义函数作用后的带有新...

用PHP实现读取和编写XML DOM代码

复制代码 代码如下: // 用 DOM 读取 XML $doc = new DOMDocument(); $doc->load(‘test.xml'); $books = $doc...

PHP常见字符串操作函数与用法总结

本文实例讲述了PHP常见字符串操作函数与用法。分享给大家供大家参考,具体如下: 一、字符串的格式化 1、字符串的格式化 trim()函数可以去除字符串的开始位置和结束位置的空格,并将结果...