Перейти к содержанию

PersonAward

Описание: Класс для представления награды персоны Представляет информацию о награде, полученной персоной (актером, режиссером и т.д.), включая номинацию, статус победы, связанный фильм и временные метки. Используется для отображения наградной истории персоны.

С версии: 1.0.0

Версия: 1.0.0

См. также:

  • \KinopoiskDev\Models\Nomination: Для информации о номинации
  • \KinopoiskDev\Models\Movie: Для связанного фильма
  • \KinopoiskDev\Models\Person: Для основной модели персоны

__construct()

Описание: Конструктор для создания объекта награды персоны Создает новый экземпляр класса PersonAward с указанными параметрами. Только personId является обязательным, остальные параметры опциональны.

Параметры:

  • $personId (int): ID персоны (обязательный параметр)
  • $nomination (Nomination|null): Информация о номинации
  • $winning (bool|null): Статус победы (true - победа, false - номинация)
  • $updatedAt (string|null): Дата последнего обновления записи
  • $createdAt (string|null): Дата создания записи
  • $movie (Movie|null): Связанный фильм за который получена награда

__toString()

Описание: Возвращает строковое представление награды Формирует читаемое представление награды, включающее информацию о номинации, статусе победы и связанном фильме.

Возвращает: string Строковое представление награды

hasInfo()

Описание: Проверяет, установлена ли информация о награде

Возвращает: bool true если есть информация о номинации или статусе победы, иначе false

getWinningStatus()

Описание: Возвращает статус награды в текстовом виде

Возвращает: string Статус награды ("Победа", "Номинация", "Неизвестно")

getMovieTitle()

Описание: Возвращает название связанного фильма

Возвращает: string|null Название фильма за который получена награда или null

fromArray()

Описание: Создает объект PersonAward из массива данных API Фабричный метод для создания экземпляра класса PersonAward из массива данных, полученных от API Kinopoisk.dev. Безопасно обрабатывает отсутствующие значения и преобразует вложенные объекты в соответствующие классы. - personId: int - ID персоны (обязательно) - nomination: array|null - данные о номинации - winning: bool|null - статус победы - updatedAt: string|null - дата обновления - createdAt: string|null - дата создания - movie: array|null - данные о связанном фильме

Параметры:

  • $data (array): Массив данных о награде персоны от API, содержащий ключи:

Возвращает: \KinopoiskDev\Models\PersonAward Новый экземпляр класса PersonAward с данными из массива

Исключения:

  • \KinopoiskDev\Exceptions\KinopoiskDevException:

toArray()

Описание: Преобразует объект в массив данных Конвертирует текущий экземпляр класса PersonAward в массив, совместимый с форматом API Kinopoisk.dev. Используется для сериализации данных при отправке запросов к API или для экспорта данных.

Возвращает: array Массив с данными о награде персоны

isWinning()

Описание: Проверяет, является ли награда победной

Возвращает: bool true если персона победила в номинации, иначе false

isNominationOnly()

Описание: Проверяет, является ли запись только номинацией

Возвращает: bool true если персона была только номинирована, иначе false

validate()

Описание: Валидирует данные модели

Возвращает: bool True если данные валидны