PHP 將dataurl轉(zhuǎn)成圖片image方法
使用canvas 生成的圖片,是使用dataurl的,php無法直接通過file_put_contents方法保存到本地電腦,需要做一下轉(zhuǎn)碼。
圖片dataurl 如下
$imgstr = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==';
方法一:
通過正則提取出dataurl存儲所需的數(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 );感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
新聞熱點
疑難解答
圖片精選