PHP使用阿里OSS上傳圖片
阿新 • • 發佈:2018-12-21
//商品新增 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(); } }