php将Base64图片保存到本地
php将Base64图片保存到本地方法:
1.前台传来图片信息,例如:"data:image/png;base64,iVBORwAATElE0KGgoAAAAN..."
2.用正则匹配出图片的格式
3.去掉data:image/png;base64头部信息,使用base64_decode对编码内容进行解码。
4.保存
具体代码:
function base64_image($imgName, $path)
{
//正则匹配出图片的格式
if (preg_match('/^(data:\s*image\/(\w+);base64,)/', $imgName, $result)) {
$type = $result[2]; //获取图片格式
$new_file = $path . "/";
if (!file_exists($new_file)) {
//检查是否有该文件夹,如果没有就创建,并给予最高权限
mkdir($new_file, 0700);
}
$new_file = $new_file . time() . ".{$type}";
if (file_put_contents($new_file, base64_decode(str_replace($result[1], '', $imgName)))) {
return '/' . $new_file;
} else {
return false;
}
} else {
return false;
}
}
当前页面是本站的「Google AMP」版。查看和发表评论请点击:完整版 »