PHP保存Base64图片base64_decode的问题

PHP对Base64的支持很是好,有内置的base64_encode与base64_decode负责图片的Base64编码与解码。php

编码上,只要将图片流读取到,然后使用base64_encode进行进行编码便可获得。函数

而解码就略微麻烦一点,究其缘由在于把图片编码成base64字符串后,编码内会加入这些字符 data:image/png;base64,原本是用于base64进行识别的。可是若是直接放到php里用base64_decode函数解码会致使最终保存的图片文件格式损坏,而解决方法就是先去掉这一串字符:编码

$base64_string= explode(',', $base64_string); //截取data:image/png;base64, 这个逗号后的字符
$data= base64_decode($base64_string[1]);  //对截取后的字符使用base64_decode进行解码
file_put_contents($url, $data); //写入文件并保存

  

本博客仅做备份使用,最新内容请访问博客:http://www.chisushu.comurl

相关文章
相关标签/搜索