store_id = get_store_id(); $form->upload_config = UploadConfig::getConf(get_store_id()); return $this->asJson($form->uploadClientFile(Storage::TYPE_IMAGE)); } /** * 上传视频 * @return \yii\web\Response */ public function actionUploadVideo() { $form = new Upload(); $form->store_id = get_store_id(); $form->upload_config = UploadConfig::getConf(get_store_id()); return $this->asJson($form->uploadClientFile(Storage::TYPE_VIDEO)); } /** * 上传图片 * @return \yii\web\Response */ public function actionUploadBase64() { $form = new Upload(); $base64img = post_params('base64img'); $info = explode(',',$base64img); if($info[0] == 'data:image/jpeg;base64'){ $pic = base64_decode($info[1]); if ($pic === false) { return $this->asJson([ 'code' => 1, 'msg' => '文件上传失败' ]); } // 如果解码成功,则将解码的代码写入文件即可,下面只做个示范。 $filename = md5(date('ymdHis') . 'base64'); $path = \Yii::$app->runtimePath . '/image/' . $filename . '.jpg'; $pic_url = str_replace('http://', 'https://', \Yii::$app->request->hostInfo . '/runtime/image/' . $filename . '.jpg'); if (file_put_contents($path, $pic)){ $_FILES['image'] = [ 'name' => $filename . '.jpg', 'type' => 'image/jpeg', 'tmp_name' => $path, 'error' => UPLOAD_ERR_OK, 'size' => 50, ]; debug_log($_FILES, 'image.log'); return $this->actionUploadImage(); } } return $this->asJson([ 'code' => 1, 'msg' => '文件上传失败' ]); } }