Yii::$app->getUser()->isGuest]; return $this->render('index', $params); } /** * 上传文件 * @return string */ public function actionUploadFile() { $e = new stdClass(); $e->success = false; $e->message = 'ok'; $userId = 0; if (isset($_POST["uploadType"]) && 'base64' == $_POST["uploadType"]) { $e = $this->uploadFileStr(); } else { $e = $this->uploadFile(); } return $this->renderJson($e); } private function uploadFile() { $e = new stdClass(); $e->success = false; $e->message = 'ok'; if (empty($_FILES["file"])) { $e->message = '文件为空'; return $e; } if (empty($_FILES["file"]['tmp_name'])) { $e->message = '文件为空'; return $e; } $type = $_FILES["file"]["type"]; $typeArr = explode('/', $type); if ('image' !== $typeArr[0]) { $e->message = '只能上传 png, jpg 等文件'; return $e; } $uploadInfo = ImageManager::uploadImg($_FILES["file"]); $filename = $uploadInfo[0]; $tmpUrl = $this->site->base_url.'/'.$uploadInfo[2]; $tmpMinFile = $this->site->base_url.'/'.$uploadInfo[3]; $e->success = true; $e->tmpFile = $filename; $e->tmpMinUrl = $tmpMinFile; $e->tmpUrl = $tmpUrl; $e->message = 'ok'; return $e; } private function uploadFileStr() { $e = new stdClass(); $e->success = false; $e->message = 'fail'; $e->tmpFile = ''; $e->tmpMinUrl = ''; $e->tmpUrl = ''; $imgData = $this->request->post("file"); $imgData = str_replace('data:image/jpeg;base64,', '', $imgData); $imageStr = base64_decode($imgData); if ($imageStr) { $uploadInfo = ImageManager::saveBase64ImgFileToLocal($imageStr); $filename = $uploadInfo[0]; $tmpUrl = $this->site->base_url.'/'.$uploadInfo[2]; $tmpMinFile = $this->site->base_url.'/'.$uploadInfo[3]; $e->success = true; $e->tmpFile = $filename; $e->tmpMinUrl = $tmpMinFile; $e->tmpUrl = $tmpUrl; $e->message = 'ok'; } return $e; } }