Symfony任务:在输出(命令行)中显示彩色文本?

时间:2011-11-24 11:46:46

标签: symfony1 colors task command-line-interface

我想在命令行输出中的Symfony任务显示的文本上有一个非常基本的格式(只是颜色)(就像你在运行测试时看到的颜色一样):任何想法?

非常感谢

3 个答案:

答案 0 :(得分:3)

在你的任务中,你可以使用两个带有$ style参数的函数来生成输出:

在这里你可以找到Symfony's documentation

答案 1 :(得分:1)

您可以尝试以下内容:

echo "\033[01;31m Show me some red colors \033[0m";

此处有更多颜色:http://tldp.org/HOWTO/Bash-Prompt-HOWTO/x329.html

答案 2 :(得分:1)

您可以通过更改文件来更改Symfony终端输出的颜色:

/lib/symfony/vendor/phing/listener/AnsiColorLogger.php

在构造函数方法中,您可以更改每种输出类型的颜色(信息,错误,调试...):

public function __construct() {
    parent::__construct();
    $this->errColor = self::PREFIX . self::ATTR_DIM . self::SEPARATOR . self::FG_RED . self::SUFFIX;
    $this->warnColor = self::PREFIX . self::ATTR_DIM . self::SEPARATOR . self::FG_MAGENTA . self::SUFFIX;
    $this->infoColor = self::PREFIX . self::ATTR_DIM . self::SEPARATOR . self::FG_GREEN . self::SUFFIX;
    $this->verboseColor = self::PREFIX . self::ATTR_DIM . self::SEPARATOR . self::FG_CYAN . self::SUFFIX;
    $this->debugColor = self::PREFIX . self::ATTR_DIM . self::SEPARATOR . self::FG_BLUE . self::SUFFIX;
}

您的颜色范围有限,但它可能会对您有所帮助。