PHP使用阿里OSS上传图片

 //商品添加
    public function cmy_add()
    {
        if (Request::instance()->isPost()) {
            $data = input("post.");
            $model = Dity::add($data);
            if ($model > 0) {
                $this->success("添加成功!");
            } else {
                $this->error("添加失败!");
            }
        } elseif(Request::instance()->isGet()) {
            return $this->fetch();
        }
    }
    public function uploadFile()
    {
        // 获取表单上传文件
        $file = request()->file('photo');
        return $file;
    }
    public static function ossUploadFile()
    {
        // 移动到框架应用根目录/public/uploads/ 目录下
        $commodity = new Commodity();
        $upload = $commodity->uploadFile();
        $filetype = $upload->getInfo()['type'];
        $filetmp = mb_convert_encoding($upload->getInfo()['tmp_name'], "UTF-8", "GBK");
        try{
            $accessKeyId = config("secure.AccessKeyId");
            $accessKeySecret = config("secure.AccessKeySecret");
            $endpoint = config("secure.Endpoint");
            //实例化对象 将配置传入
            $ossClient = new OssClient($accessKeyId, $accessKeySecret, $endpoint);
            //生成随机文件名
            $fileName = sha1(date("YmdHis", time()) . uniqid()) . "." . $filetype;
            //向阿里云存储空间存储图片
            $result = $ossClient->uploadFile(config('secure.BucketName'), $fileName, $filetmp);
            //获取URL地址
            $url = $result['info']['url'];
            return $url;
        } catch (OssException $e) {
            return $e->getMessage();
        }
    }

猜你喜欢

转载自blog.csdn.net/chengjianghao/article/details/84025311