Php 我应该编辑appkernel以使用核心控制器吗

Php 我应该编辑appkernel以使用核心控制器吗,php,symfony,architecture,symfony-2.1,symfony-2.3,Php,Symfony,Architecture,Symfony 2.1,Symfony 2.3,我刚刚开始一个新项目,我选择了symfony2作为它的MVC框架。我想首先通过创建一个具有模块化体系结构的基础来启动这个项目,我指的是一个空的应用程序,它包含主要和公共服务,如(导航树管理、使用数据库激活/取消激活模块、记录器…)或任何其他在详细构思之后可能出现的全局功能。我的模块稍后将打包 我想到的是一个核心控制器,它将接收所有请求,执行所有需要的处理,根据配置(文件或数据库)和缓存(会话/全局)初始化/更改模块将使用的服务,然后调用被调用的控制器并返回响应。要做到这一点,我必须将内核更改为始

我刚刚开始一个新项目,我选择了symfony2作为它的MVC框架。我想首先通过创建一个具有模块化体系结构的基础来启动这个项目,我指的是一个空的应用程序,它包含主要和公共服务,如(导航树管理、使用数据库激活/取消激活模块、记录器…)或任何其他在详细构思之后可能出现的全局功能。我的模块稍后将打包

我想到的是一个核心控制器,它将接收所有请求,执行所有需要的处理,根据配置(文件或数据库)和缓存(会话/全局)初始化/更改模块将使用的服务,然后调用被调用的控制器并返回响应。要做到这一点,我必须将内核更改为始终分派到此控制器,并给出用户调用的操作和控制器

我在symfony做了一些项目,只使用标准版,这是第一次尝试进行内部定制,所以我没有很多经验。如果有人认为我的想法不好,并有其他建议,请给他们,我将非常感谢


编辑:我可以指定,这个基础只是为了找到完美的模块化体系结构而进行的测试,因此任何其他与symfony中的模块化相关的想法都会有很大的帮助!谢谢

内核本身与控制器无关。这一切都由控制员解决。如果始终希望使用同一控制器处理每个输入请求,则可以创建自己的ControllerResolver以始终返回该控制器的实例。有关控制器解析的更多信息,请参阅


但是,我建议不要这样做。控制器应该在用户焊盘和逻辑焊盘之间非常紧密地连接。所有繁重的工作都应该在逻辑层、服务中完成。如果您使用服务,您可以将它们注册为kernel.controller事件的侦听器,而不是从控制器中调用它们。另请参见

thx以获取您的响应,我认为聆听内核事件是最好的方式!