daft-framework / daft-psr-router
基于PSR的signpostmarv/daft-router变体
v0.4.0
2022-06-18 16:09 UTC
Requires
- php: ^7.4|^8.0
- ext-mbstring: *
- nikic/fast-route: ^1.3
- psr/http-message: ^1.0
- psr/http-server-handler: ^1.0
- psr/http-server-middleware: ^1.0
- signpostmarv/daft-interface-collector: ^2.6
Requires (Dev)
- infection/infection: ^0.26.11
- maglnet/composer-require-checker: ^3.3
- php-coveralls/php-coveralls: ^2.5
- phpunit/phpunit: ^9.5
- psalm/plugin-phpunit: ^0.17.0
- roave/security-advisories: dev-latest
- sebastian/phpcpd: ^6.0
- signpostmarv/php-cs-fixer-config: ^0.23.0
- vimeo/psalm: ^4.23
Suggests
- vimeo/psalm: Useful for static analysis to reduce runtime type checks etc.
Conflicts
- vimeo/psalm: <4.8.1
README
版权所有 2020 SignpostMarv
daft-psr-router
终于有时间创建一个基于PSR的路由器。 因为一些原因。
将signpostmarv/daft-router的模式适配到PSR-7,PSR-15等。
daft-router与daft-psr-router之间的区别
nikic/fast-route
- 删除了自定义的RouteCollector(它只用于提供类型提示)。
- 简化了路由编译器,去掉了实例化 + 操作方法。
- 去掉了使用
FastRoute\cachedDispatcher
的要求,尽管仍然推荐使用。 - 删除了自定义分发器,转而使用一个接受任何
FastRoute\Dispatcher
实例的最终静态方法,严格检查FastRoute\Dispatcher::dispatch()
的结果,并返回表示返回值的对象。
psr-15
- 通过添加特定的
Psr\Http\Message\ResponseInterface
实例保留了daft-router的请求拦截器。