Обработка роутов в соответствии с PSR-7
Например:
$router = new Router(); $router->addRoute('/user/[i:id]', function(NyholmPsr7Request $request){ // work here with the request in PSR-7 way $psr17Factory = new NyholmPsr7FactoryPsr17Factory(); $responseBody = $psr17Factory->createStream('Hello world'); $response = $psr17Factory->createResponse(200)->withBody($responseBody); (new endHttpHandlerRunnerEmitterSapiEmitter())->emit($response); }); $router->registerMiddleware('/user/[i:id]', function(string $route, array $parameters){ $psr17Factory = new NyholmPsr7FactoryPsr17Factory(); $creator = new NyholmPsr7ServerServerRequestCreator( $psr17Factory, // ServerRequestFactory $psr17Factory, // UriFactory $psr17Factory, // UploadedFileFactory $psr17Factory // StreamFactory ); return $creator->fromGlobals(); });Самое лучшее в этом примере это то, что если вы не используете в своем проекте PSR-7, то вы не «платите» за это )
Learn more
More information can be found here: