jeyroik/ extas-players
此包最新版本(4.0.0)没有可用的许可证信息。
Extas 玩家包
4.0.0
2023-06-26 20:35 UTC
Requires
Requires (Dev)
README
描述
本包提供用户管理机制。
使用方法
本包由以下部分组成
IPlayer
- 玩家,即用户。IPlayerIdentity
- 玩家的身份或账户。一个玩家可以有多个账户。IPlayerIdentityProvider
- 账户提供者。
该机制工作方式如下
- 输入为供应商名称和账户当前值。
- 如果对于给定的“供应商+账户值”对存在账户,则意味着用户也存在。
- 如果账户不存在,则创建它。3.1. 如果在创建账户时有已登录的用户,则账户将绑定到该用户。
use extas\components\players\PlayerService; $currentPlayer = PlayerService::getCurrentPlayer(); $identity = //get user identity form outside service $playerName = $currentPlayer ? $currentPlayer->getName() : $identity; $player = null; $playerIdentity = $playerIdentityService->getIdentityByValue($this->client->getId(), $identity); if (!$playerIdentity) { $playerIdentity = $playerIdentityService->createIdentity($this->client->getProvider(), $playerName, $identity) ; } $player = $currentPlayer ?: $playerIdentity->getPlayer(); $playerService->login($player);