PHP接收前端Ajax Base64位图片文件处理

BUG员 171 2020-08-14

PHP接收前端Ajax Base64位图片文件处理  php上传 base64文件上传 ajax ajaxbase64位上传 第1张

工作需要,之前做php后端都是用二进制流上传,现在突然给我换成了base64位上传  让我有点猝不及防....难受 香菇..

废话补多少 直接上代码

<?php
/**
 * $image="data:image/jpeg;base64,/9j/4AAQSkZJRg
 * 上传base64位方法
 */
public function base64image($image,$path="/upload/image/"){
    $base64_image_content=$image;
    if (preg_match('/^(data:\s*image\/(\w+);base64,)/', $base64_image_content, $result)){
        $type = $result[2];
        if (!is_dir($path)) {
            @mkdir('.' . $path, 0777, true);
        }
        $new_file = $path.date('Ymd',time())."/";
        if(!file_exists($new_file)){
            //检查是否有该文件夹,如果没有就创建,并给予最高权限
            mkdir($new_file, 0777,true);
        }
        $new_file = $new_file.time().".{$type}";
        if (file_put_contents($new_file, base64_decode(str_replace($result[1], '', $base64_image_content)))){
            return $new_file;
        }else{
            return false;
        }
    }else{
        return false;
    }
}


上一篇:Vue跨域请求接口问题-从Nginx方解决问题
下一篇:建立属于自己的composer包管理器
相关文章

 发表评论

暂时没有评论,来抢沙发吧~