Php 如果多个bundle覆盖symfony中的同一控制器,会发生什么情况?

Php 如果多个bundle覆盖symfony中的同一控制器,会发生什么情况?,php,inheritance,symfony,bundle,Php,Inheritance,Symfony,Bundle,我想创建一个捆绑包,我希望其他捆绑包通过覆盖功能或添加功能来扩展它。SYmfony支持开箱即用()但是如果多个bundle试图覆盖同一个控制器会发生什么。它是否有一个链式的效果,即每个捆绑包在它之前得到捆绑包的响应,还是最后一个扩展功能的捆绑包只被注意到?如果是后者,symfony中是否有允许链式方法的方法?我认为您对“覆盖”的工作原理感到困惑。扩展类时,可以通过创建具有相同名称的方法来“覆盖”基类中的方法,但实际上不会以任何方式影响基类,因此多个类可以扩展相同的基类,而不会相互交互 在Symf

我想创建一个捆绑包,我希望其他捆绑包通过覆盖功能或添加功能来扩展它。SYmfony支持开箱即用()但是如果多个bundle试图覆盖同一个控制器会发生什么。它是否有一个链式的效果,即每个捆绑包在它之前得到捆绑包的响应,还是最后一个扩展功能的捆绑包只被注意到?如果是后者,symfony中是否有允许链式方法的方法?

我认为您对“覆盖”的工作原理感到困惑。扩展类时,可以通过创建具有相同名称的方法来“覆盖”基类中的方法,但实际上不会以任何方式影响基类,因此多个类可以扩展相同的基类,而不会相互交互

在Symfony2中,从多个不同的bundle扩展一个基本控制器是绝对正确的。在此基类中定义的任何方法都将在用于扩展它的类中可用。根据您的需要,您可能还希望研究可以定义哪些方法来允许在应用程序中全局访问方法