linkeddatacenter / url-rewriter
此包已被废弃且不再维护。未建议替代包。
中间件用于更改请求URI。
1.0.0
2019-09-23 08:09 UTC
Requires
- php: ^7.0
- psr/http-server-middleware: ^1.0
Requires (Dev)
- friendsofphp/php-cs-fixer: ^2.1
- middlewares/utils: ^2.1
- phpunit/phpunit: ^6.0|^7.0
- squizlabs/php_codesniffer: ^3.0
- zendframework/zend-diactoros: ^1.3
This package is auto-updated.
Last update: 2024-01-23 18:06:04 UTC
README
一个简单的中间件,用于重写HTTP请求URI的路径、查询和片段。它需要一个按顺序评估的规则数组。规则是一个两位数组:array[0]是要搜索的正则表达式模式(内部转换为#^$pattern$#),array[1]是根据PHP函数preg_replace进行的替换。
需求
- PHP >= 7.0
- PSR-7 http消息实现(Diactoros、Guzzle、Slim等)
- PSR-15中间件调度器
安装
此包可通过Composer以 linkeddatacenter/url-rewriter 的方式安装和自动加载。
composer require linkeddatacenter/url-rewriter
示例
$dispatcher = new Dispatcher([ new Middlewares\BasePath([ [ '/(\w+)' => '/$1/pluto', '/(\w+)/(\w+)/(\w+).(csv|json|xml)(.*)' =>'/$1/docstore?db=$2&table=$3&format=$4$5', ]) ]); $response = $dispatcher->dispatch(new ServerRequest());
选项
__construct(array $rules)
rules := array [ , ,.... ] rule := array [ , ]
使用Docker进行测试
docker run --rm -ti -v $PWD/.:/app composer composer install docker run --rm -ti -v $PWD/.:/app composer vendor/bin/phpunit
有关最近更改的更多信息,请参阅 CHANGELOG,有关贡献细节,请参阅 CONTRIBUTING。
MIT许可证(MIT)。有关更多信息,请参阅 LICENSE。