本文整理汇总了PHP中Definition::addTag方法的典型用法代码示例。如果您正苦于以下问题:PHP Definition::addTag方法的具体用法?PHP Definition::addTag怎么用?PHP Definition::addTag使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Definition
的用法示例。
在下文中一共展示了Definition::addTag方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: process
public function process(ContainerBuilder $container)
{
$methods = $container->findTaggedServiceIds('knp_rad_prototype.method');
foreach ($methods as $id => $tags) {
foreach ($tags as $tag) {
$tag = array_merge(['alias' => $tag['method'], 'domain' => null], $tag);
$definition = new Definition('Knp\\Rad\\Prototype\\Prototype\\Method', [sprintf('@%s', $id), $tag['method']]);
$definition->addTag('knp_rad_prototype.prototype_method', $tag);
$name = sprintf('knp_rad_prototype.prototype.method.%s', Inflector::tableize($tag['alias']));
$container->setDefinition($name, $definition);
}
}
$methodContainer = $container->getDefinition('knp_rad_prototype.prototype.container');
$methods = $container->findTaggedServiceIds('knp_rad_prototype.prototype_method');
foreach ($methods as $id => $tags) {
$tag = current($tags);
$methodContainer->addMethodCall('addMethod', [$tag['alias'], new Reference($id), $tag['domain']]);
}
}