egulias/tag-debug-command-bundle

Symfony 2 的控制台命令,用于调试服务标签

安装: 17

依赖: 0

建议者: 0

安全: 0

星标: 8

关注者: 2

分支: 1

开放问题: 0

类型:symfony-bundle

1.0.0 2014-08-27 22:51 UTC

This package is auto-updated.

Last update: 2024-09-16 03:16:23 UTC


README

[构建状态] (https://travis-ci.org/egulias/TagDebugCommandBundle) 覆盖率状态Scrutinizer 代码质量

此包提供了一个简单的命令 container:tag-debug,允许通过提供有关应用中定义的标签服务的信息来轻松调试标记的服务。它将检索有关所有标记服务的信息。

您可以使用 过滤器并定义 您自己的过滤器

用法

对于任何命令,您应该使用:从您的项目根目录使用 app/console。命令是

$ php app/console container:tag-debug

可用选项

  • --show-private:如果指定,将显示私有服务。
  • --filter:可以有多个这样的选项。形式为 --filter name=param1,param2,其中 param 是给定过滤器的参数。

可用过滤器

  • 名称(name):按标签名称过滤,精确匹配。需要一个参数,例如:--filter name=tag_name
  • 属性名称(attribute_name):按标签属性名称过滤,精确匹配。需要一个参数,例如:--filter attribute_name=attr_name
  • 属性值(attribute_value):按标签属性值过滤,精确匹配。需要两个参数,例如:--filter attribute_value=attr_name,attr_value
  • 名称正则表达式(name_regex):按标签名称过滤,提供一个正则表达式。不需要提供分隔符(内部使用 ~)。需要一个参数,例如:--filter name_regex=regex

有关更多信息,请参阅 TagDebug 库

示例用法和输出

示例过滤器

$ php app/console sf container:tag-debug --filter name=kernel.event_listener

查看此命令的示例输出

两个过滤器,一个具有多个值

$ php app/console container:tag-debug
    --filter name=kernel.event_listener
    --filter attribute_value=event,kernel.controller

查看此命令的示例输出

安装和配置

获取包

将其添加到您的 composer.json

Symfony >= 2.3

{
    "require": {
        "egulias/tag-debug-command-bundle": "~1.0"
    }
}

使用 composer 下载新需求

$ php composer.phar update egulias/tag-debug-command-bundle

将 TagDebugCommandBundle 添加到您的应用程序内核

<?php

  // app/AppKernel.php
  public function registerBundles()
  {
    return array(
      // ...
      new Egulias\TagDebugCommandBundle\EguliasTagDebugCommandBundle(),
      // ...
      );
  }

配置您自己的过滤器

要创建您自己的过滤器,请按照以下步骤操作

  1. 在您的过滤器类中实现 Egulias\TagDebug\Tag\Filter 接口。过滤器将通过构造函数接收您定义的尽可能多的参数,来自控制台。请参阅上面的示例。如果您想接收参数,请记住添加构造函数。
  2. 在您的配置文件中添加
egulias_tag_debug_command:
    filters:
        - {class: Fully\Qualified\Filter\Class\Name, name:"filter_console_name"}
  1. 享受吧!