- Регистрация
- 17 Дек 2019
- Сообщения
- 1,683
- Реакции
- 962
Полнофункциональный PHP 8.3 клиент для работы с неофициальным API KinoPoisk.dev. Библиотека предоставляет удобный объектно-ориентированный интерфейс для доступа ко всем возможностям API с полной поддержкой типов, кэширования и детальной документацией на русском языке.
Отличия от KinopoiskUnofficial.tech
Полное сравнение здесь: https://readme.devcraft.club/latest/dev/kinopoiskdev/notkinopoiskphp-compare/
Возможности
- Полное покрытие API v1.4 - поддержка всех доступных эндпоинтов
- PHP 8.3+ - использование современных возможностей языка
- Типизация - полная поддержка типов для IDE и статического анализа
- Кэширование - встроенная поддержка кэширования запросов
- Удобные фильтры - мощная система фильтрации с fluent interface
- Документация на русском - подробная документация и примеры
- Обработка ошибок - продуманная система исключений
- PSR-совместимость - следование стандартам PHP
Установка
Через Composer
Bash:
composer require devcraftclub/kinopoisk-dev-php
Требования
- PHP >= 8.3
- Guzzle HTTP >= 7.0
- Токен API от kinopoisk.dev
Быстрый старт
Получение токена
Для работы с API необходимо получить токен через Telegram бота:- Напишите боту @kinopoiskdev_bot в Telegram
- Следуйте инструкциям бота для получения токена
Базовое использование
PHP:
<?php
require_once 'vendor/autoload.php';
use KinopoiskDev\Http\MovieRequests;
use KinopoiskDev\Filter\MovieSearchFilter;
use KinopoiskDev\Exceptions\KinopoiskDevException;
// Инициализация клиента
$apiToken = 'ваш_токен_здесь';
$movieClient = new MovieRequests($apiToken);
try {
// Получение фильма по ID
$movie = $movieClient->getMovieById(666);
echo "Фильм: {$movie->name} ({$movie->year})\n";
echo "Рейтинг КП: {$movie->rating->kp}\n";
// Поиск фильмов с фильтрами
$filter = new MovieSearchFilter();
$filter->withRatingBetween(8.0, 10.0)
->withYearBetween(2020, 2024)
->withIncludedGenres(['драма', 'триллер'])
->onlyMovies();
$results = $movieClient->searchMovies($filter, 1, 10);
echo "Найдено: {$results->total} фильмов\n";
} catch (KinopoiskDevException $e) {
echo "Ошибка API: " . $e->getMessage() . "\n";
}
Документация
Она находится здесь: https://readme.devcraft.club/latest/dev/kinopoiskdev/Отличия от KinopoiskUnofficial.tech
Полное сравнение здесь: https://readme.devcraft.club/latest/dev/kinopoiskdev/notkinopoiskphp-compare/
Последнее редактирование: