首頁  >  文章  >  php教程  >  PHP 將dataurl轉成圖片image方法總結

PHP 將dataurl轉成圖片image方法總結

高洛峰
高洛峰原創
2016-12-27 09:42:071134瀏覽

PHP 將dataurl轉換成圖片image方法

使用canvas 產生的圖片,是使用dataurl的,php無法直接透過file_put_contents方法儲存到本機,需要做一下轉碼。

 圖片dataurl 如下

$imgstr = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKEACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKEAFF4F45076666SFF37038SYF4F4F4F4F4F4F4F4F47;

方法一:

透過正規提取dataurl儲存所需的數據,然後直接展示頁面上

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

感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

更多PHP 將dataurl轉成圖片image方法總結相關文章請關注PHP中文網!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn