PHP 將dataurl轉(zhuǎn)成圖片image方法總結(jié)
PHP 將dataurl轉(zhuǎn)成圖片image方法
使用canvas 生成的圖片,是使用dataurl的,php無法直接通過file_put_contents方法保存到本地電腦,需要做一下轉(zhuǎn)碼。
圖片dataurl 如下
$imgstr = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==';
方法一:
通過正則提取出dataurl存儲(chǔ)所需的數(shù)據(jù),然后直接展示在頁面上
if (!preg_match('/data:([^;]*);base64,(.*)/', $imgstr, $matches)) {
die("error");
}
$content = base64_decode($matches[2]);
header('Content-Type: '.$matches[1]);
header('Content-Length: '.strlen($content));
echo $content;
die;
方法二:
如果僅僅是想保存圖片到本地,可以用substr 和 strpos 方法
$imgdata = substr($imgstr,strpos($imgstr,",") + 1);
$decodedData = base64_decode($imgdata);
file_put_contents('11.png',$decodedData );
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
相關(guān)文章
php bootstrap實(shí)現(xiàn)簡單登錄
這篇文章主要為大家詳細(xì)介紹了php bootstrap實(shí)現(xiàn)簡單登錄的具體方法,感興趣的小伙伴們可以參考一下2016-03-03
PHP實(shí)現(xiàn)基于PDO擴(kuò)展連接PostgreSQL對象關(guān)系數(shù)據(jù)庫示例
這篇文章主要介紹了PHP實(shí)現(xiàn)基于PDO擴(kuò)展連接PostgreSQL對象關(guān)系數(shù)據(jù)庫,結(jié)合實(shí)例形式分析了php使用pdo連接PostgreSQL并執(zhí)行簡單sql語句的相關(guān)操作技巧,需要的朋友可以參考下2018-03-03
php根據(jù)用戶名和手機(jī)號(hào)查詢是否存在手機(jī)號(hào)碼
本文主要分享了php根據(jù)用戶名和手機(jī)號(hào)查詢是否存在手機(jī)號(hào)碼的代碼,具有很好的參考價(jià)值,下面跟著小編一起來看下吧2017-02-02
PHP實(shí)現(xiàn)多服務(wù)器session共享之NFS共享的方法
PHP實(shí)現(xiàn)多服務(wù)器session共享之NFS共享的方法...2007-03-03
php中批量刪除Mysql中相同前綴的數(shù)據(jù)表的代碼
Mysql如何批量刪除相同前綴的數(shù)據(jù)表,原理就是讀取數(shù)據(jù)中的所有表,查找class_開頭的表,如果開頭是這個(gè),就刪除。2011-07-07
PHP 處理TXT文件(打開/關(guān)閉/檢查/讀取)
php寫入txt、php讀取txt,在PHP處理TXT文件時(shí)經(jīng)常會(huì)使用到,本文整理了一些相關(guān)代碼,感興趣的朋友可以參考下哈2013-05-05
php函數(shù)serialize()與unserialize()用法實(shí)例
這篇文章主要介紹了php函數(shù)serialize()與unserialize()用法,以實(shí)例形式詳細(xì)講述了php函數(shù)serialize()與unserialize()的適用情況與使用方法,具有很好的參考借鑒價(jià)值,需要的朋友可以參考下2014-11-11

