路由已作为中间件实现。我们仍然使用FastRoute作为默认路由器,但它并没有紧密耦合。如果您想实现另一个路由库,您可以通过创建自己的路由接口实现来实现。DispatcherInterface
, RouteCollectorInterface
,RouteParserInterface
和RouteResolverInterface
它们在 Slim 的组件和路由库之间创建了一个桥梁。如果您使用的是determineRouteBeforeAppMiddleware
,则需要Middleware\RoutingMiddleware
在调用 run() 之前将中间件添加到您的应用程序以保持之前的行为。
<?php
use Slim\Factory\AppFactory;
require __DIR__ . '/../vendor/autoload.php';
$app = AppFactory::create();
// Add Routing Middleware
$app->addRoutingMiddleware();
// ...
$app->run();