PHP-фреймворк для создания REST- и GraphQL API с автоматической документацией, админ-интерфейсом и генерацией клиентов для Next.js, Nuxt или React Native.
Luracast/Restler
REST API-фреймворк для PHP 8+, который генерирует маршруты, валидацию и документацию OpenAPI по обычным методам классов с помощью рефлексии.
- Звёзды
- 1,386
- Форки
- 313
- Открытые issues
- 33
- Последний коммит
- 3 дня назад
Что это?
В Restler бизнес-логику API можно описывать обычными методами классов PHP. Фреймворк использует рефлексию и PHPDoc или атрибуты, чтобы связывать методы с HTTP-маршрутами, проверять типизированные параметры и создавать документацию OpenAPI 3.0 со встроенным обозревателем Swagger UI. Поэтому большую часть кода для маршрутизации и контроллеров не приходится писать вручную.
По умолчанию ответы возвращаются в формате JSON. После настройки можно выбирать другие форматы вывода с помощью расширений файлов, например .xml, .csv или .xlsx. Фреймворк работает под управлением PHP-FPM, на Swoole или OpenSwoole для высокопроизводительной обработки запросов с постоянными процессами, на ReactPHP и Workerman, а также на AWS Lambda через Bref. В него также входят поддержка GraphQL, примеры OAuth 2.0-сервера и ограничение частоты запросов.
Проект рассчитан на PHP 8.0 и новее и устанавливается через Composer. В README есть руководство по миграции с v5 и примеры проектов для CRUD, аутентификации, версионирования и HTML-шаблонов.
Ключевые возможности
- 01Автоматически связывает методы классов с REST-маршрутами с помощью рефлексии
- 02Проверяет типизированные параметры и возвращает подходящие HTTP-коды статуса
- 03Генерирует документацию OpenAPI 3.0 по комментариям PHPDoc и отображает её в Swagger UI
- 04По умолчанию поддерживает JSON, а после настройки — XML, CSV, XLSX, YAML и HTML
- 05Работает на PHP-FPM, Swoole/OpenSwoole, ReactPHP, Workerman или AWS Lambda
- 06Включает поддержку GraphQL, ограничение частоты запросов и примеры OAuth 2.0-сервера
Сценарии использования
- Создание внутренних API или микросервисов в существующей кодовой базе на PHP
- Передача JSON современным клиентам и XML или CSV устаревшим системам через одни и те же конечные точки
- Экспорт больших наборов данных в CSV или Excel с помощью потоковой передачи через генераторы
- Модернизация старого PHP-приложения путём добавления слоя REST API
Быстрый старт
- 1
Установите пакет с помощью Composer
composer require luracast/restler:^6.0 - 2
Создайте класс API и шлюз public/index.php, который его сопоставляет (см. README)
- 3
Запустите встроенный сервер PHP
php -S localhost:8080 -t public
Что важно знать
- Требуется PHP 8.0 или новее.
- В метаданных проекта лицензия не указана.
- В версии 6 есть несовместимые изменения по сравнению с v5, поэтому для обновления потребуется руководство по миграции.
В подборках
Темы
Частые вопросы
- Что такое Restler?
- REST API-фреймворк для PHP 8+, который генерирует маршруты, валидацию и документацию OpenAPI по обычным методам классов с помощью рефлексии. В Restler бизнес-логику API можно описывать обычными методами классов PHP. Фреймворк использует рефлексию и PHPDoc или атрибуты, чтобы связывать методы с HTTP-маршрутами, проверять типизированные параметры и создавать документацию OpenAPI 3.0 со встроенным обозревателем Swagger UI. Поэтому большую часть кода для маршрутизации и контроллеров не приходится писать вручную.
- Restler можно использовать бесплатно? Какая у него лицензия?
- У Restler не указана лицензия. Код открыт, но без лицензии нет явного разрешения на его использование — уточните у автора, прежде чем на него полагаться.
- Restler всё ещё поддерживается?
- Активно поддерживается. Последний коммит в Restler — 4 нояб. 2026 г..
- Для чего можно использовать Restler?
- Создание внутренних API или микросервисов в существующей кодовой базе на PHP Передача JSON современным клиентам и XML или CSV устаревшим системам через одни и те же конечные точки Экспорт больших наборов данных в CSV или Excel с помощью потоковой передачи через генераторы Модернизация старого PHP-приложения путём добавления слоя REST API
- Как установить Restler?
- Установите пакет с помощью Composer: composer require luracast/restler:^6.0 Создайте класс API и шлюз public/index.php, который его сопоставляет (см. README) Запустите встроенный сервер PHP: php -S localhost:8080 -t public
- Где скачать Restler?
- Исходный код и инструкции по установке — на GitHub: https://github.com/Luracast/Restler
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Веб-фреймворк на Python для создания REST API с типами Python поверх Django, автоматической документацией OpenAPI и валидацией Pydantic.
Гибкий ASGI-фреймворк для Python, предназначенный для создания API и включающий валидацию данных, внедрение зависимостей, генерацию OpenAPI и интеграцию с ORM.
Адаптер для запуска приложений Laravel и Lumen на Swoole в виде постоянно работающего PHP-сервера с поддержкой WebSocket, TCP/UDP и асинхронных задач.
Symfony — PHP-фреймворк для создания веб-приложений и консольных приложений, а также набор переиспользуемых PHP-компонентов.
Python-фреймворк для создания API со стандартными аннотациями типов, автоматической валидацией, документацией OpenAPI и высокой производительностью.