分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 代码编程

base64图片上传处理方式

发布时间:2023-09-06 01:59责任编辑:胡小海关键词:base64
前台传图片的base64格式,后台处理方式
//处理图片信息 返回对应的路径
public function uploadBaseIma($imgArr){
???$result = array();
???//将路径直接设置在uploads下
???if($imgArr){
???????foreach($imgArr as $k => $v){
???????????if($v){
???????????????//判断上传的是否为原地址
???????????????$a = preg_match(‘/.*(\.png|\.jpg|\.jpeg|\.gif)$/‘, $v);
???????????????if($a){
???????????????????//是就存储不变,将文件路径存储
???????????????????$b = substr($v,36);
???????????????????$result[$k] = $b;
???????????????}else{
???????????????????//不是就上传图片
???????????????????$address = $this->baseChangeImg($v);
???????????????????$result[$k] = $address;
???????????????}
???????????}else {
???????????????return array();
???????????}
???????}
???????return $result;
???}
}
//base64转化为本地图片
public function baseChangeImg($base)
{
???//匹配出图片的格式
???if (preg_match(‘/^(data:\s*image\/(\w+);base64,)/‘, $base, $result)) {
???????$type = $result[2];
???????$path = ‘/base‘ . date(‘Ymd‘, time()) . "/";
???????$new_file = public_path(‘uploads‘) . $path;
???????if (!file_exists($new_file)) {
???????????//检查是否有该文件夹,如果没有就创建,并给予最高权限
???????????mkdir($new_file, 0700);
???????}
???????$name = uniqid() . ".{$type}";
???????$new_file = $new_file . $name;
???????if (file_put_contents($new_file, base64_decode(str_replace($result[1], ‘‘, $base)))) {
???????????return $path . $name;
???????} else {
???????????return false;
???????}
???}
}

base64图片上传处理方式

原文地址:https://www.cnblogs.com/lvfish/p/9178628.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved