middlewares / lowercase
PSR-15 中间件包的小写存储库
v1.0.0
2021-04-08 19:25 UTC
Requires
- php: ^7.2 || ^8.0
- psr/http-server-middleware: ^1.0
Requires (Dev)
- friendsofphp/php-cs-fixer: ^2.0
- laminas/laminas-diactoros: ^2.3
- middlewares/utils: ^3.0
- oscarotero/php-cs-fixer-config: ^1.0
- phpunit/phpunit: ^8|^9
- squizlabs/php_codesniffer: ^3.0
This package is auto-updated.
Last update: 2024-09-09 03:13:20 UTC
README
将 uri 路径设置为小写的中间件。例如,/Foo/Bar/
转换为 /foo/bar
。如果您将路由定义为小写并且希望使路由不区分大小写,则很有用。
要求
- PHP >= 7.2
- PSR-7 http 库
- PSR-15 中间件分发器
安装
此包可以通过 Composer 以 middlewares/lowercase 的方式安装和自动加载。
composer require middlewares/lowercase
示例
$dispatcher = new Dispatcher([ (new Middlewares\Lowercase()) ->redirect() ->attribute('before-lowercase-uri') ]); $response = $dispatcher->dispatch(new ServerRequest());
使用方法
重定向
如果路径必须转换为小写,则此选项将返回一个 301 响应,将重定向到新的小写路径。您可以提供用于创建重定向响应的 Psr\Http\Message\ResponseFactoryInterface。如果没有定义,将使用 Middleware\Utils\Factory 自动检测。
$responseFactory = new MyOwnResponseFactory(); //Simply set the path to lowercase $lowercase = new Middlewares\Lowercase(); //Returns a redirect response to the new path $lowercase = (new Middlewares\Lowercase())->redirect(); //Returns a redirect response to the new path using a specific response factory $lowercase = (new Middlewares\Lowercase())->redirect($responseFactory);
属性
如果路径必须转换为小写,则此方法将原始路径存储在一个属性中。
// Save the original non-lowercase uri in the custom attribute "pre-lowercase-path" $lowercase = (new Middlewares\Lowercase())->attribute('before-lowercase-uri');
有关最近更改的更多信息,请参阅 CHANGELOG,有关贡献详情请参阅 CONTRIBUTING。
MIT 许可证 (MIT)。有关更多信息,请参阅 LICENSE。