MovieFilter¶
Описание: Класс для создания фильтров при поиске фильмов Этот класс предоставляет методы для построения параметров фильтрации при поиске фильмов через API Kinopoisk.dev
Ссылка: https://kinopoiskdev.readme.io/reference/moviecontroller_findmanybyqueryv1_4
id()¶
Описание: Добавляет фильтр по ID фильма
Параметры:
$id(int|array): ID фильма или массив ID $operator(string): Оператор сравнения (eq, ne, in, nin)
addFilter()¶
Описание: Добавляет произвольный фильтр
Параметры:
$field(string): Поле для фильтрации$value(mixed): Значение фильтра$operator(string): Оператор сравнения
externalId()¶
Описание: Добавляет фильтр по внешнему ID фильма
name()¶
Описание: Добавляет фильтр по названию фильма
Параметры:
$name(string): Название фильма$operator(string): Оператор сравнения (eq, ne, in, nin, regex)
enName()¶
Описание: Добавляет фильтр по английскому названию фильма
Параметры:
$enName(string): Английское название фильма$operator(string): Оператор сравнения (eq, ne, in, nin, regex)
alternativeName()¶
Описание: Добавляет фильтр по альтернативному названию фильма
Параметры:
$alternativeName(string): Альтернативное название фильма$operator(string): Оператор сравнения (eq, ne, in, nin, regex)
names()¶
Описание: Добавляет фильтр по всем названиям фильма
Параметры:
$names(string|array): Название или массив названий $operator(string): Оператор сравнения (eq, ne, in, nin, regex)
description()¶
Описание: Добавляет фильтр по описанию фильма
Параметры:
$description(string): Описание фильма$operator(string): Оператор сравнения (eq, ne, regex)
shortDescription()¶
Описание: Добавляет фильтр по краткому описанию фильма
Параметры:
$shortDescription(string): Краткое описание фильма$operator(string): Оператор сравнения (eq, ne, regex)
slogan()¶
Описание: Добавляет фильтр по слогану фильма
Параметры:
$slogan(string): Слоган фильма$operator(string): Оператор сравнения (eq, ne, regex)
type()¶
Описание: Добавляет фильтр по типу фильма
Параметры:
$type(string): Тип фильма (movie, tv-series, cartoon, anime, animated-series, tv-show)$operator(string): Оператор сравнения (eq, ne, in, nin)
typeNumber()¶
Описание: Добавляет фильтр по номеру типа фильма
Параметры:
$typeNumber(int): Номер типа фильма (1-6)$operator(string): Оператор сравнения (eq, ne, in, nin, gt, gte, lt, lte)
isSeries()¶
Описание: Добавляет фильтр по признаку сериала
Параметры:
$isSeries(bool): Является ли фильм сериалом
status()¶
Описание: Добавляет фильтр по статусу фильма
Параметры:
$status(string): Статус фильма (filming, pre-production, completed, announced, post-production)$operator(string): Оператор сравнения (eq, ne, in, nin)
year()¶
Описание: Добавляет фильтр по году выпуска
Параметры:
$year(int): Год выпуска$operator(string): Оператор сравнения (eq, ne, in, nin, gt, gte, lt, lte)
yearRange()¶
Описание: Добавляет фильтр по диапазону годов выпуска
Параметры:
$fromYear(int): Начальный год$toYear(int): Конечный год
releaseYears()¶
Описание: Добавляет фильтр по годам релиза
Параметры:
$releaseYears(array): Массив годов релиза
rating()¶
Описание: Добавляет фильтр по рейтингу
Параметры:
$rating(float|array): Рейтинг или массив с параметрами рейтинга $field(string): Поле рейтинга (kp, imdb, tmdb, filmCritics, russianFilmCritics, await)$operator(string): Оператор сравнения (eq, ne, in, nin, gt, gte, lt, lte)
ratingRange()¶
Описание: Добавляет фильтр по диапазону рейтинга
Параметры:
$minRating(float): Минимальный рейтинг$maxRating(float): Максимальный рейтинг$field(string): Поле рейтинга (kp, imdb, tmdb, filmCritics, russianFilmCritics, await)
ratingMpaa()¶
Описание: Добавляет фильтр по рейтингу MPAA
Параметры:
$ratingMpaa(string): Рейтинг MPAA (g, pg, pg-13, r, nc-17)$operator(string): Оператор сравнения (eq, ne, in, nin)
ageRating()¶
Описание: Добавляет фильтр по возрастному рейтингу
Параметры:
$ageRating(int): Возрастной рейтинг$operator(string): Оператор сравнения (eq, ne, in, nin, gt, gte, lt, lte)
votes()¶
Описание: Добавляет фильтр по голосам
Параметры:
$votes(int|array): Количество голосов или массив с параметрами голосов $field(string): Поле голосов (kp, imdb, tmdb, filmCritics, russianFilmCritics, await)$operator(string): Оператор сравнения (eq, ne, in, nin, gt, gte, lt, lte)
votesRange()¶
Описание: Добавляет фильтр по диапазону голосов
Параметры:
$minVotes(int): Минимальное количество голосов$maxVotes(int): Максимальное количество голосов$field(string): Поле голосов (kp, imdb, tmdb, filmCritics, russianFilmCritics, await)
seasonsInfo()¶
Описание: Добавляет фильтр по информации о сезонах
budget()¶
Описание: Добавляет фильтр по бюджету
audience()¶
Описание: Добавляет фильтр по аудитории
movieLength()¶
Описание: Добавляет фильтр по длительности фильма
Параметры:
$movieLength(int): Длительность фильма в минутах$operator(string): Оператор сравнения (eq, ne, in, nin, gt, gte, lt, lte)
seriesLength()¶
Описание: Добавляет фильтр по длительности серии
Параметры:
$seriesLength(int): Длительность серии в минутах$operator(string): Оператор сравнения (eq, ne, in, nin, gt, gte, lt, lte)
totalSeriesLength()¶
Описание: Добавляет фильтр по общей длительности сериала
Параметры:
$totalSeriesLength(int): Общая длительность сериала в минутах$operator(string): Оператор сравнения (eq, ne, in, nin, gt, gte, lt, lte)
genres()¶
Описание: Добавляет фильтр по жанрам
Параметры:
$genres(string|array): Жанр или массив жанров $operator(string): Оператор сравнения (eq, ne, in, nin)
includeGenres()¶
Описание: Добавляет фильтр для включения жанров (оператор +)
Параметры:
$genres(string|array): Жанр или массив жанров для включения
excludeGenres()¶
Описание: Добавляет фильтр для исключения жанров (оператор !)
Параметры:
$genres(string|array): Жанр или массив жанров для исключения
countries()¶
Описание: Добавляет фильтр по странам
Параметры:
$countries(string|array): Страна или массив стран $operator(string): Оператор сравнения (eq, ne, in, nin)
includeCountries()¶
Описание: Добавляет фильтр для включения стран (оператор +)
Параметры:
$countries(string|array): Страна или массив стран для включения
excludeCountries()¶
Описание: Добавляет фильтр для исключения стран (оператор !)
Параметры:
$countries(string|array): Страна или массив стран для исключения
poster()¶
Описание: Добавляет фильтр по постеру
backdrop()¶
Описание: Добавляет фильтр по фоновому изображению
logo()¶
Описание: Добавляет фильтр по логотипу
ticketsOnSale()¶
Описание: Добавляет фильтр по наличию билетов в продаже
Параметры:
$ticketsOnSale(bool): Наличие билетов в продаже
videos()¶
Описание: Добавляет фильтр по видео
networks()¶
Описание: Добавляет фильтр по сетям
persons()¶
Описание: Добавляет фильтр по участникам
facts()¶
Описание: Добавляет фильтр по фактам
fees()¶
Описание: Добавляет фильтр по сборам
premiere()¶
Описание: Добавляет фильтр по премьере
premiereRange()¶
Описание: Добавляет фильтр по диапазону дат премьеры
Параметры:
$fromDate(string): Начальная дата в формате dd.mm.yyyy$toDate(string): Конечная дата в формате dd.mm.yyyy$country(string): Страна премьеры (russia, world, usa, ...)
similarMovies()¶
Описание: Добавляет фильтр по похожим фильмам
sequelsAndPrequels()¶
Описание: Добавляет фильтр по сиквелам и приквелам
watchability()¶
Описание: Добавляет фильтр по доступности просмотра
lists()¶
Описание: Добавляет фильтр по спискам
top10()¶
Описание: Добавляет фильтр по топ-10
Параметры:
$top10(int): Позиция в топ-10$operator(string): Оператор сравнения (eq, ne, in, nin, gt, gte, lt, lte)
top250()¶
Описание: Добавляет фильтр по топ-250
Параметры:
$top250(int): Позиция в топ-250$operator(string): Оператор сравнения (eq, ne, in, nin, gt, gte, lt, lte)
updatedAt()¶
Описание: Добавляет фильтр по дате обновления
Параметры:
$updatedAt(string): Дата обновления$operator(string): Оператор сравнения (eq, ne, gt, gte, lt, lte)
createdAt()¶
Описание: Добавляет фильтр по дате создания
Параметры:
$createdAt(string): Дата создания$operator(string): Оператор сравнения (eq, ne, gt, gte, lt, lte)
getFilters()¶
Описание: Возвращает массив фильтров
Возвращает: array<string, mixed>
notNullFields()¶
Описание: Исключение записей с пустыми значениями в указанных полях
Параметры:
$fields(array): Массив названий полей
reset()¶
Описание: Сбрасывает все фильтры
setMaxLimit()¶
Описание: Устанавливает лимит количества элементов в результате запроса Метод устанавливает ограничение на количество возвращаемых элементов в текущем запросе. Используется для пагинации и контроля объема данных. Добавляет фильтр 'limit' в массив фильтров запроса.
Параметры:
$int(int): Максимальное количество элементов для возврата (должно быть положительным числом)
Возвращает: self Возвращает текущий экземпляр объекта для поддержки цепочки вызовов (fluent interface)
setPageNumber()¶
Описание: Устанавливает номер страницы для пагинации результатов Задает номер страницы для получения определенного набора результатов при выполнении запросов с пагинацией. Страницы нумеруются начиная с 1. Значение сохраняется в массиве фильтров под ключом 'page' для последующего использования в API-запросах.
С версии: 1.0.0
Параметры:
$int(int): Номер страницы для получения результатов (должен быть больше 0)
Возвращает: self Возвращает текущий экземпляр для цепочного вызова методов
Пример:
| PHP | |
|---|---|
removeSortByField()¶
Описание: Удаляет сортировку по указанному полю
Параметры:
$field(SortField): Поле для удаления из сортировки
toggleSort()¶
Описание: Переключает направление сортировки для указанного поля Если сортировка по полю существует, меняет направление на противоположное. Если сортировки нет, добавляет с направлением по умолчанию.
Параметры:
$field(SortField): Поле для переключения сортировки
sortBy()¶
Описание: Добавляет сортировку по указанному полю
Параметры:
$field(SortField): Поле для сортировки$direction(SortDirection|null): Направление сортировки (по умолчанию используется рекомендуемое)
addSortCriteria()¶
Описание: Добавляет критерий сортировки Добавляет новый критерий сортировки к текущему набору. Если критерий для указанного поля уже существует, он будет заменен.
Параметры:
$criteria(SortCriteria): Критерий сортировки
hasSortBy()¶
Описание: Проверяет, установлена ли сортировка по указанному полю
Параметры:
$field(SortField): Поле для проверки
Возвращает: bool true, если сортировка по полю установлена, false в противном случае
getSortDirection()¶
Описание: Возвращает направление сортировки для указанного поля
Параметры:
$field(SortField): Поле для получения направления
Возвращает: SortDirection|null Направление сортировки или null, если сортировка не установлена
getSortCriteria()¶
Описание: Возвращает все критерии сортировки
Возвращает: SortCriteria[] Массив критериев сортировки
setSortCriteria()¶
Описание: Устанавливает множественные критерии сортировки Заменяет текущие критерии сортировки новым набором.
Параметры:
$criteria(SortCriteria[]): Массив критериев сортировки
clearSort()¶
Описание: Очищает все критерии сортировки
addMultipleSort()¶
Описание: Добавляет множественные критерии сортировки из массива строк
Параметры:
$sorts(array): Массив строк в формате "field:direction" или просто "field"
Пример:
| PHP | |
|---|---|
getSortData()¶
Описание: Преобразует критерии сортировки в параметры для API Формирует строку сортировки в формате, ожидаемом API Kinopoisk.dev. Множественные критерии объединяются запятыми.
Возвращает: array|null Массив с данными о критериях сортировки или null, если критерии не установлены
getSortCount()¶
Описание: Возвращает количество установленных критериев сортировки
Возвращает: int Количество критериев сортировки
hasAnySorting()¶
Описание: Проверяет, установлены ли какие-либо критерии сортировки
Возвращает: bool true, если есть хотя бы один критерий сортировки, false в противном случае
getFirstSortCriteria()¶
Описание: Возвращает первый критерий сортировки
Возвращает: SortCriteria|null Первый критерий или null, если критерии отсутствуют
getLastSortCriteria()¶
Описание: Возвращает последний критерий сортировки
Возвращает: SortCriteria|null Последний критерий или null, если критерии отсутствуют
sortByImdbRating()¶
Описание: Сортировка по рейтингу IMDB (по убыванию)
sortByDesc()¶
Описание: Добавляет сортировку по убыванию
Параметры:
$field(SortField): Поле для сортировки
sortByYearOldFirst()¶
Описание: Сортировка по году выпуска (по возрастанию - сначала старые)
sortByAsc()¶
Описание: Добавляет сортировку по возрастанию
Параметры:
$field(SortField): Поле для сортировки
sortByName()¶
Описание: Сортировка по названию (по алфавиту)
sortByPopularity()¶
Описание: Сортировка по популярности (количество голосов Кинопоиска)
sortByCreated()¶
Описание: Сортировка по дате создания записи (сначала новые)
sortByUpdated()¶
Описание: Сортировка по дате обновления записи (сначала обновленные)
sortByBest()¶
Описание: Комбинированная сортировка по рейтингу и году Сначала по рейтингу Кинопоиска (по убыванию), затем по году (по убыванию).
sortByYear()¶
Описание: Сортировка по году выпуска (по убыванию - сначала новые)
sortByKinopoiskRating()¶
Описание: Сортировка по рейтингу Кинопоиска (по убыванию)
exportSortCriteria()¶
Описание: Экспорт критериев сортировки в массив для сериализации
Возвращает: array<array<string, string>> Массив с данными о критериях сортировки
importSortCriteria()¶
Описание: Импорт критериев сортировки из массива