$bs64 = $this->input->post("image", false);
$bs64 = str_replace(' ', '+', $bs64);
if(preg_match('/^(data:\s*image\/(\w+);base64,)/', $bs64, $result)){
$data = base64_decode(str_replace($result[1], '', $bs64));
$name = preg_split("/\./", $name)[0];
$name = substr($name, 0, -5) . ".png";
file_put_contents($path . $name, $data);
}
如果发现base64解析失败,或者解析出来的图片和原图不一致,可能是base64编解码不一致,可以尝试添加代码
$bs64 = str_replace(' ', '+', $bs64);
本文探讨了如何在PHP中正确处理Base64编码的图片上传,包括base64解码、错误处理及确保解析后的图片与原图一致。遇到编码不一致时,提供了替换空字符的技巧来确保代码的兼容性。

1万+

被折叠的 条评论
为什么被折叠?



