Php 基于控制台命令参数的服务参数

Php 基于控制台命令参数的服务参数,php,symfony,Php,Symfony,我有这样的情况,我有几个实体经理 entity_manager_en entity_manager_us entity_manager_pl 等等 每个实体管理器引用具有不同语言内容的数据库 我有命令,其中所需的参数是lang(语言)。 我还有一个服务,它作为构造函数参数需要实体管理器 是否可以基于命令中给出的lang动态创建实体管理器,并在创建时将其作为我的服务参数传递 我尝试使用ConsoleCommandEvent,但它在输入包含参数之前激发…如果您希望在命令中的执行方法中调

我有这样的情况,我有几个实体经理

  entity_manager_en
  entity_manager_us
  entity_manager_pl
等等

每个实体管理器引用具有不同语言内容的数据库

我有命令,其中所需的参数是lang(语言)。 我还有一个服务,它作为构造函数参数需要实体管理器

是否可以基于命令中给出的lang动态创建实体管理器,并在创建时将其作为我的服务参数传递


我尝试使用ConsoleCommandEvent,但它在输入包含参数之前激发…

如果您希望在命令中的
执行
方法中调用实体管理器,您可以获取参数并将其添加到
getManager()
方法:

protected function execute(InputInterface $input, OutputInterface $output)
{
    $lang = $input->getArgument('lang');

    $em = $this->getContainer()->get('doctrine')->getManager('entity_manager_' . $lang);

    ...
}

向我们展示您已经拥有的代码和您尝试的内容如何?