为了提供一些供应商的服务并设置我的自定义类,我正在使用CompilerPass。 我还需要传递给这个类的ovveride参数。我试过这样:
public function process(ContainerBuilder $container)
{
$definition = $container->getDefinition('vendor.service');
$definition->setClass('Acme\DemoBundle\MyClass');
$definition->setArguments(array(
'my_service_id'
));
}
这里的错误是Acme\DemoBundle\MyClass
检索字符串而不是对象。
如何传递自定义服务my_service_id
(在其他捆绑中定义)或最差情况service.container
?