格式化程序辅助
编辑本页格式化程序辅助
Formatter助手提供了用颜色格式化输出的函数。您可以使用此helper执行比在此helper中更高级的操作如何着色和样式控制台输出.
的FormatterHelper包含在默认帮助器集中,您可以通过调用getHelper ():
1
$格式化程序=$这->getHelper (“格式化程序”);
方法返回一个字符串,通常通过将其传递给控件来呈现到控制台OutputInterface: writeln方法。
在Section中打印消息
ob娱乐下载当打印属于某个“部分”的消息时,Symfony提供了一种已定义的样式。它以彩色打印该部分,并在其周围使用括号,并在其右侧打印实际消息。去掉颜色,它看起来是这样的:
1
这里是与该section相关的一些消息
要复制此样式,可以使用formatSection ()方法:
1 2 3 4 5
$formattedLine=$格式化程序->formatSection (“SomeSection”,“这里有一些与该部分相关的信息”);$输出->writeln ($formattedLine);
在一个块中打印消息
有时您希望能够打印带有背景色的整块文本。ob娱乐下载Symfony在打印错误消息时使用它。
如果手动将错误消息打印在多行上,您将注意到背景只有每行那么长。使用formatBlock ()生成一个块输出:
1 2 3
$errormessage= (“错误!”,“出问题了”];$formattedBlock=$格式化程序->formatBlock ($errormessage,“错误”);$输出->writeln ($formattedBlock);
可以看到,将消息数组传递给formatBlock ()方法创建所需的输出。如果你通过了真正的
作为第三个参数,该块将使用更多的填充进行格式化(消息上方和下方各有一行空白,左右各有2个空格)。
在块中使用的确切“风格”取决于您。在本例中,您将使用预定义的错误
风格,但也有其他风格,或者你可以创建自己的风格。看到如何着色和样式控制台输出.
打印截断的消息
有时您希望打印被截断为显式字符长度的消息。这是可能的截断()方法。
如果你想把一个很长的消息截短,例如,7个字符,你可以这样写:
1 2 3
$消息=“这是一封很长的邮件,应该删节”;$truncatedMessage=$格式化程序->截断($消息,7);$输出->writeln ($truncatedMessage);
输出将是:
1
这是……
消息被截断为给定的长度,然后后缀被追加到该字符串的末尾。
负字符串长度
如果长度为负数,则要截断的字符数从字符串的末尾开始计数:
1
$truncatedMessage=$格式化程序->截断($消息,5);
这将导致:
1
这是一条很长的信息,应该是正确的……
定制的后缀
默认情况下,...
使用后缀。如果希望使用不同的后缀,则将其作为方法的第三个参数传递。除非截断长度大于消息和后缀长度,否则后缀始终被追加。如果你根本不想使用后缀,传递一个空字符串:
1 2 3 4 5 6
$truncatedMessage=$格式化程序->截断($消息,7,“! !”);// result: This is!!$truncatedMessage=$格式化程序->截断($消息,7,”);// result: This is$truncatedMessage=$格式化程序->截断(“测试”,10);// result: test//因为“test…”字符串的长度小于10