PHP里面把16進制的圖片數據顯示在html的img標簽上(實現方法)
更新時間:2017年05月02日 11:41:25 投稿:jingxian
下面小編就為大家?guī)硪黄狿HP里面把16進制的圖片數據顯示在html的img標簽上(實現方法)。小編覺得挺不錯的,現在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
客戶公司的SQLServer2008的一個生產數據庫才1年多就高達18G之巨,原來是系統(tǒng)里面的圖片直接以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標簽上(實現方法)就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。