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

Movie

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

С версии: 1.0.0

Версия: 1.0.0

См. также:

  • \KinopoiskDev\Models\SearchMovie: Для поисковых результатов фильмов
  • \KinopoiskDev\Models\LinkedMovie: Для связанных фильмов
  • \KinopoiskDev\Models\ExternalId: Для внешних идентификаторов

__construct()

Описание: Конструктор для создания объекта фильма/сериала Создает новый экземпляр класса Movie с указанными параметрами. Все параметры являются опциональными и могут быть null при отсутствии данных.

Параметры:

  • $id (int|null): Уникальный идентификатор фильма
  • $externalId (ExternalId|null): Внешние идентификаторы (IMDB, TMDB и т.д.)
  • $name (string|null): Название фильма на русском языке
  • $alternativeName (string|null): Альтернативное название
  • $enName (string|null): Название фильма на английском языке
  • $names (array|null): Массив названий на разных языках
  • $type (MovieType|null): Тип фильма (фильм, сериал, мини-сериал)
  • $typeNumber (int|null): Номер типа
  • $year (int|null): Год выпуска
  • $description (string|null): Полное описание фильма
  • $shortDescription (string|null): Краткое описание
  • $slogan (string|null): Слоган фильма
  • $status (MovieStatus|null): Статус фильма
  • $facts (array|null): Массив фактов о фильме
  • $movieLength (int|null): Длительность фильма в минутах
  • $ratingMpaa (RatingMpaa|null): Рейтинг MPAA
  • $ageRating (int|null): Возрастной рейтинг
  • $rating (Rating|null): Рейтинги фильма
  • $votes (Votes|null): Голоса за фильм
  • $logo (Logo|null): Логотип фильма
  • $poster (ShortImage|null): Постер фильма
  • $backdrop (ShortImage|null): Фоновое изображение
  • $videos (VideoTypes|null): Видео материалы
  • $genres (array): Массив жанров
  • $countries (array): Массив стран производства
  • $persons (array): Массив участников съемочной группы
  • $reviewInfo (ReviewInfo|null): Информация о рецензиях
  • $budget (CurrencyValue|null): Бюджет фильма
  • $fees (Fees|null): Кассовые сборы
  • $premiere (Premiere|null): Информация о премьере
  • $watchability (Watchability|null): Где посмотреть фильм
  • $releaseYears (array|null): Годы выпуска
  • $top10 (int|null): Позиция в топ-10
  • $top250 (int|null): Позиция в топ-250
  • $isSeries (bool): Является ли сериалом
  • $ticketsOnSale (bool|null): Продаются ли билеты
  • $totalSeriesLength (int|null): Общая длительность сериала
  • $seriesLength (int|null): Длительность серии
  • $audience (array|null): Аудитория фильма
  • $lists (array): Списки фильмов
  • $networks (Networks|null): Сети вещания
  • $createdAt (string|null): Дата создания записи
  • $updatedAt (string|null): Дата обновления записи

См. также:

  • Movie::fromArray: () Для создания объекта из массива данных API

fromArray()

Описание: Создает объект Movie из массива данных API Фабричный метод для создания экземпляра класса Movie из массива данных, полученных от API Kinopoisk.dev. Безопасно обрабатывает отсутствующие значения, устанавливая их в null или пустые массивы.

Возвращает: static Новый экземпляр класса Movie

См. также:

  • Movie::toArray: () Для обратного преобразования в массив

validate()

Описание: Валидирует данные модели Проверяет корректность основных полей объекта Movie. Проверяет наличие обязательного идентификатора и валидность опциональных полей.

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

getKinopoiskRating()

Описание: Возвращает рейтинг фильма на Кинопоиске Извлекает рейтинг фильма из системы Кинопоиск. Возвращает null, если рейтинг не установлен или объект рейтинга отсутствует.

Возвращает: float|null Рейтинг на Кинопоиске (от 0.0 до 10.0) или null, если не установлен

См. также:

  • Movie::getImdbRating: () Для получения рейтинга IMDB
  • Rating::getKp: () Для альтернативного способа получения рейтинга

getImdbRating()

Описание: Возвращает рейтинг фильма на IMDB Извлекает рейтинг фильма из системы IMDB. Возвращает null, если рейтинг не установлен или объект рейтинга отсутствует.

Возвращает: float|null Рейтинг на IMDB (от 0.0 до 10.0) или null, если не установлен

См. также:

  • Movie::getKinopoiskRating: () Для получения рейтинга Кинопоиска
  • Rating::getImdb: () Для альтернативного способа получения рейтинга

getPosterUrl()

Описание: Возвращает URL постера фильма Извлекает URL-адрес постера фильма из объекта изображения. Возвращает null, если постер не установлен или URL отсутствует.

Возвращает: string|null URL-адрес постера или null, если не установлен

См. также:

  • Image::getUrl: () Для получения URL из объекта изображения
  • Movie::getBackdropUrl: () Для получения URL фонового изображения

getGenreNames()

Описание: Возвращает массив названий жанров фильма Извлекает названия жанров из массива объектов жанров и возвращает их в виде простого массива строк. Если поле 'name' отсутствует у жанра, возвращается пустая строка.

Возвращает: array<string> Массив строк с названиями жанров

См. также:

  • Movie::getCountryNames: () Для получения названий стран
  • Movie::getGenres: () Для получения полной информации о жанрах

getCountryNames()

Описание: Возвращает массив названий стран производства Извлекает названия стран из массива объектов стран и возвращает их в виде простого массива строк. Если поле 'name' отсутствует у страны, возвращается пустая строка.

Возвращает: array<string> Массив строк с названиями стран производства

См. также:

  • Movie::getGenreNames: () Для получения названий жанров
  • Movie::getCountries: () Для получения полной информации о странах

getImdbUrl()

Описание: Возвращает URL страницы фильма в системе IMDB Формирует URL-адрес страницы фильма в системе IMDB на основе внешних идентификаторов. Возвращает null, если внешние идентификаторы отсутствуют или идентификатор IMDB не установлен.

Возвращает: string|null URL-адрес страницы фильма в IMDB или null, если не доступен

См. также:

  • ExternalId::getImdbUrl: () Для получения URL из внешних идентификаторов
  • Movie::getTmdbUrl: () Для получения URL TMDB

getTmdbUrl()

Описание: Возвращает URL страницы фильма в системе TMDB Формирует URL-адрес страницы фильма в системе The Movie Database (TMDB) на основе внешних идентификаторов. Возвращает null, если внешние идентификаторы отсутствуют или идентификатор TMDB не установлен.

Возвращает: string|null URL-адрес страницы фильма в TMDB или null, если не доступен

См. также:

  • ExternalId::getTmdbUrl: () Для получения URL из внешних идентификаторов
  • Movie::getImdbUrl: () Для получения URL IMDB

toArray()

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

Возвращает: array<string, mixed> Массив с данными фильма

См. также:

  • Movie::fromArray: () Для создания объекта из массива

getName()

Описание: Возвращает наиболее подходящее название фильма. Метод последовательно проверяет наличие русского названия (name), альтернативного названия (alternativeName) и английского названия (enName). Возвращается первое найденное не-null значение. Если все названия отсутствуют, возвращается пустая строка.

С версии: 1.0.0

Возвращает: string Название фильма или пустая строка, если ни одно из названий не доступно.

См. также:

  • Movie::: $name
  • Movie::: $alternativeName
  • Movie::: $enName