LinkedMovie
Описание: Класс для представления связанного фильма Представляет упрощенную информацию о фильме, используемую в связанных записях и ассоциациях. Содержит основные данные о фильме: идентификатор, названия, тип, постер, рейтинг и год выпуска. Используется для отображения связанных фильмов (похожие фильмы, сиквелы, приквелы и т.д.) без необходимости загрузки полной информации.
С версии: 1.0.0
Версия: 1.0.0
См. также:
\KinopoiskDev\Models\Movie: Для полной информации о фильме\KinopoiskDev\Enums\MovieType: Для типов фильмов\KinopoiskDev\Models\ShortImage: Для изображений\KinopoiskDev\Models\Rating: Для рейтингов
__construct()
Описание: Конструктор для создания экземпляра связанного фильма Создает новый объект LinkedMovie с указанными параметрами. Все параметры, кроме идентификатора, являются опциональными и могут быть null при отсутствии соответствующих данных. Используется для инициализации объекта с данными о связанном фильме.
Параметры:
$id(int): Уникальный идентификатор фильма в базе данных$name(string|null): Русское название фильма (null если не указано)$enName(string|null): Английское название фильма (null если не указано)$alternativeName(string|null): Альтернативное название фильма (null если не указано)$type(MovieType|null): Тип фильма (фильм, сериал, мультфильм и т.д.) или null$poster(ShortImage|null): Постер фильма или null если отсутствует$rating(Rating|null): Рейтинги фильма или null если отсутствуют$year(int|null): Год выпуска фильма или null если не указан
fromArray()
Описание: Создает объект LinkedMovie из массива данных API Статический фабричный метод для создания экземпляра класса LinkedMovie из массива данных, полученных от API Kinopoisk.dev. Безопасно обрабатывает отсутствующие значения, устанавливая их в null. Автоматически конвертирует вложенные объекты (тип, постер, рейтинг) в соответствующие классы.
- id: int - уникальный идентификатор
- name: string|null - русское название
- enName: string|null - английское название
- alternativeName: string|null - альтернативное название
- type: string|null - тип фильма
- poster: array|null - данные о постере
- rating: array|null - данные о рейтинге
- year: int|null - год выпуска
Параметры:
$data(array): Массив данных о связанном фильме от API, содержащий ключи:
Возвращает: static Новый экземпляр класса LinkedMovie с данными из массива
См. также:
ShortImage::fromArray: () Для создания объекта постераRating::fromArray: () Для создания объекта рейтингаMovieType::tryFrom: () Для создания enum типа фильма
toArray()
Описание: Преобразует объект LinkedMovie в массив данных Конвертирует текущий экземпляр класса LinkedMovie в массив, совместимый с форматом API Kinopoisk.dev. Автоматически обрабатывает вложенные объекты, преобразуя их в соответствующие массивы. Используется для сериализации данных при отправке запросов к API или для экспорта данных в JSON.
- id: int - уникальный идентификатор
- name: string|null - русское название
- enName: string|null - английское название
- alternativeName: string|null - альтернативное название
- type: string|null - значение типа фильма
- poster: array|null - данные о постере
- rating: array|null - данные о рейтинге
- year: int|null - год выпуска
Возвращает: array Массив с данными о связанном фильме, содержащий ключи:
См. также:
ShortImage::toArray: () Для преобразования постера в массивRating::toArray: () Для преобразования рейтинга в массив
validate()
Описание: Валидирует данные модели
Возвращает: bool True если данные валидны