zend-expressive 中的拆分路由配置

Split route configuration in zend-expressive

我正在使用 zend-expressive (3) 构建我的 REST API。文件 config/routes.php 包含我的路线,例如

return function (Application $app, MiddlewareFactory $factory, ContainerInterface $container) : void {
    $app->get('/', Start\HomePageHandler::class, 'home');
    $app->get('/api/ping', Start\PingHandler::class, 'api.ping');
};

每个新模块都会增加很多新路由。这变得令人困惑。有没有办法将路由配置拆分成多个文件?

添加路由的方法有两种。第一个是你如何做,注入路线。您可以使用 custom delegator factories 将路由拆分为模块。

第二个是 configuration。您可以在 config/routes/ 目录中创建一堆文件并自动加载这些文件。但是,如果您更喜欢模块中的路由,我建议坚持使用第一种方法。

请注意,同时使用这两种方法可能会导致不必要的副作用,因此您应该选择一种方法。