有没有办法在Silex中获取所有已安装的控制器集合/提供者?
所以当我有类似的东西:
$app->mount("/faq", new FaqControllerProvider());
$app->mount("/", new HomepageControllerProvider());
我可以很容易地在上一个已安装的控制器(HomepageControllerProvider)中获得所有已安装的控制器集合/提供程序.
解决方法:
Silex不保留对控制器提供程序的引用.您可以通过路线服务访问RouteCollection.
如果您确实需要访问该信息,则可以为该应用程序创建一个装饰器,该装饰器环绕实际应用程序,捕获要挂载的调用,并提供对该信息的访问权.