kryptamine / groot
PHP 8 属性路由适配器
0.0.1
2021-09-26 12:15 UTC
Requires
- php: ^8.0
Requires (Dev)
- phpunit/phpunit: ^9.5
README
此包是一个适配器,提供将 PHP 8 属性与您喜欢的任何路由器集成的功能。
use Kryptamine\Groot\Attributes\Get; use Kryptamine\Groot\Attributes\Post; use Kryptamine\Groot\Attributes\Controller; #[Controller('users')] class UserController { #[Get('/')] public function getUsers(): void { } #[Get('/{id:\d+}')] public function getUser(int $id): void { } #[Post('/')] public function saveUser(): void { } ... }
安装
- 使用 composer 安装此包
composer require kryptamine/groot
- 使用支持的适配器或实现 您自己的适配器
使用示例
namespace Kryptamine\Groot; use Kryptamine\Groot\Router; use Bramus\Router\Router as BramusRouter; use Kryptamine\Groot\Adapters\BramusRouterAdapter; require 'vendor/autoload.php'; $bramusRouter = new BramusRouter(); $router = new Router(BramusRouterAdapter::fromBramusRouter($bramusRouter), [ UserController::class, ]); $router->register(); $bramusRouter->run();
支持的适配器
要创建自己的适配器,您应该实现 RouteRegistrarAdapterInterface