Я создаю сеансы с ключом $ и IP. Я сомневаюсь, как проверить, существует ли сессия и как ее обновить.
Это функция, которую я использую для проверки доступа пользователя.
public function access(int $userId, Token $token, string $ip, string $userAgent): void
{
if ($this->sessions->hasForUserByIp($userId, $token->token, $ip)) {
return;
}
$conn = $this->sessions->countForUser($userId, $token->token);
if ($conn >= $token->max_conn) {
throw new \DomainException('Sessions limit is reached.');
}
$session = Session::create(
$userId,
$token->token,
$ip,
$userAgent
);
$this->sessions->save($session);
}
Извините за длинное объяснение,Я учусь и у меня мало опыта.