Account


Account предоставляет статические методы для основных пользовательских сценариев работы с учётной записью.

Поддерживает

  • регистрацию пользователя
  • авторизацию по логину или email
  • сохранение авторизации между посещениями
  • получение основных данных авторизованного пользователя
  • завершение пользовательской сессии
  • указание email и телефона при регистрации

Создавать экземпляр класса не нужно.

Авторизация

authorization(string $login, string $password, bool $remember = false): array

Авторизует пользователя по логину или email:

php
$result = Account::authorization('user@example.com', 'Example_123', true);

if (($result['status'] ?? false) === true) {
    $user = $result['user'];
}

Параметр $remember определяет, нужно ли сохранять авторизацию между посещениями.

Метод возвращает массив:

Поле Тип Описание
status bool Результат авторизации.
error array Обнаруженные ошибки.
warning array Предупреждения.
remember bool Была ли сохранена авторизация.
user array | null Основные данные авторизованного пользователя.

При успешной авторизации поле user содержит:

Поле Тип Описание
id int Идентификатор пользователя.
login string Логин пользователя.
email string Email пользователя.
role string Роль пользователя.

Регистрация

registration(...): array

Для пользовательской регистрации передавайте именованные аргументы:

php
$result = Account::registration(login: 'example-user', password: 'Example_123', confirmPassword: 'Example_123', email: 'user@example.com', phone: '+375291234567');

if (($result['status'] ?? false) === true) {
    $userId = $result['user-id'];
}

Поддерживаемые параметры пользовательской регистрации:

Параметр Описание
login Логин пользователя.
password Пароль.
confirmPassword Подтверждение пароля.
email Email пользователя. Может быть пустым.
phone Телефон пользователя. Может быть пустым.

Метод возвращает массив:

Поле Тип Описание
status bool Результат регистрации.
errors array Обнаруженные ошибки.
user-id int | null Идентификатор созданного пользователя.

Именованные аргументы позволяют явно указать нужные данные и не зависят от порядка необязательных параметров метода.

Завершение авторизации

logout(): void

Завершает пользовательскую сессию:

php
Account::logout();

Метод ничего не возвращает.

Важные замечания

  • класс используется статически
  • успешная авторизация определяется строгой проверкой status === true
  • значения из error, warning и errors следует преобразовывать в понятные локализованные сообщения