egulias / tag-debug
用于调试在 Symfony 2 DIC 中注册的服务标签的调试库
1.0.0
2014-08-27 21:10 UTC
Requires
Requires (Dev)
- phpunit/phpunit: ~4.0
- satooshi/php-coveralls: dev-master
This package is auto-updated.
Last update: 2024-09-16 03:12:36 UTC
README
此库将获取所有已标记服务的相关信息
安装和配置
获取库
php composer.phar require egulias/tags-debug
使用
基本用法
<?php use Egulias\TagDebug\Tag\TagFetcher; use Egulias\TagDebug\Tag\FilterList; use Symfony\Component\DependencyInjection\ContainerBuilder; $containerBuilder = new ContainerBuilder; $fetcher = new TagFetcher($containerBuilder); $filters = new FilterList(); $tags = $fetcher->fetch($filters);
$tags
将为每个标签名称有一个键
$tags['tag-name']['Class\Name\Of\Service']['tag'] = Egulias\TagDebug\Tag\Tag $tags['tag-name']['Class\Name\Of\Service']['definition'] = Symfony\Component\DependencyInjection\Definition
过滤
当前过滤器以 "AND" 的方式工作,这意味着标签必须符合所有过滤条件。
<?php use Egulias\TagDebug\Tag\TagFetcher; use Egulias\TagDebug\Tag\FilterList; use Egulias\TagDebug\Tag\Filter\Name; use Symfony\Component\DependencyInjection\ContainerBuilder; $containerBuilder = new ContainerBuilder; $fetcher = new TagFetcher($containerBuilder); $filters = new FilterList(); $filters->addFilter(new Name("nameToFilterFor")); $tags = $fetcher->fetch($filters);
您可以通过实现 Egulias\TagDebug\Tag\Filter
并将其添加到过滤列表中来自定义过滤器。