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);
...
}
向我们展示您已经拥有的代码和您尝试的内容如何?