/** * @param $email * @param $userName * @param $password * @return array|int * 用户注册 * 成功返回1 * 错误返回错误信息数组 */ public function userRegister($email, $userName, $password) { $createDate = date('Y-m-d H:i:sa'); $userId = md5($email . $createDate); $user = new User(); $user->user_id = $userId; $user->user_email = $email; $user->user_password = md5($password); $user->user_name = $userName; $user->create_date = $createDate; $tran = \Yii::$app->db->beginTransaction(); try { if ($user->save()) { $disk = new Disk(); $disk->disk_id = md5($userId . $createDate); //创建用户空间 $disk->user_id = $userId; $disk->capacity = 21474836480; //20GB $disk->available_size = 21474836480; $disk->create_date = $createDate; if ($disk->save()) { //初始化用户跟目录 $fileRecord = new FileRecord(); $fileRecord->f_record_id = $userId; $fileRecord->f_record_type = '2'; //f_record_type:2,目录类型 $fileRecord->file_id = '0'; //目录类型文件id为0 $fileRecord->user_id = $userId; $fileRecord->file_name = '我的网盘'; $fileRecord->extension = ''; $fileRecord->file_type = 'folder'; $fileRecord->file_size = 0; $fileRecord->parent_id = '0'; //跟目录上级目录为0 $fileRecord->upload_date = $createDate; $fileRecord->state = '0'; //记录状态0为正常 if ($fileRecord->save()) { $tran->commit(); $_SESSION['user'] = $user; return 'success'; } else { $tran->rollBack(); return $fileRecord->errors; } } else { $tran->rollBack(); return $disk->errors; } } else { $tran->rollBack(); return $user->errors; } } catch (Exception $e) { $tran->rollBack(); return $e->errors; } }