在类模式中使用控制器时,将其他参数注入操作?

时间:2014-02-07 14:09:48

标签: php symfony symfony-2.3 silex

我有一个名为 ApplicationDecorator 的类,它继承了 Application 并添加了一些常用的方法。

此时每个控制器操作在开头都包含一行

$appDec = new ApplicationDecorator($app);

是否有可能告诉Silex将实例作为参数传递给操作,就像为 Application Request 完成一样?

所以看起来如下:

public function switchAction(ApplicationDecorator $appDec, Request $request) {

我已经在使用Controllers in classes并希望注入一个继承的 Application 类。

  

您可以使用Request和Silex \ Application类型提示来获取$ request   和$ app注入。

目前仅支持请求应用 是否有可能扩展可能的值?

1 个答案:

答案 0 :(得分:0)

您正在寻找controllers in classes

$app->get('/', 'Igorw\\Foo::bar');

use Silex\Application;
use Symfony\Component\HttpFoundation\Request;

namespace Igorw
{
  class Foo
  {
    public function bar(Request $request, Application $app)
    {
        ...
    }
  }
}