middlewares/lowercase

PSR-15 中间件包的小写存储库

v1.0.0 2021-04-08 19:25 UTC

This package is auto-updated.

Last update: 2024-09-09 03:13:20 UTC


README

Latest Version on Packagist Software License Testing Total Downloads

将 uri 路径设置为小写的中间件。例如,/Foo/Bar/ 转换为 /foo/bar。如果您将路由定义为小写并且希望使路由不区分大小写,则很有用。

要求

安装

此包可以通过 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