如何将 Symfony Table 中的第一列格式化为与第一行相同的格式?
How to format the first column in a Symfony Table the same as the first row?
A Symfony Table 通常第一行的颜色与其他行不同。但是,我希望第一行和第一列具有相同的样式。我知道存在 TableStyle
但我无法弄清楚如何为第一列 + 第一行提供相同的样式。在此示例中 Table 我希望第一列也为绿色(文本行 A、行 B 和行 C)。
这个例子Table可以使用下面的代码生成:
$table = new Table($output);
$table
->setHeaders(array('Col A', 'Col B', 'Col C'))
->setRows(array(
array('Row A', 'Divine Comedy', 'Dante Alighieri'),
array('Row B', 'A Tale of Two Cities', 'Charles Dickens'),
array('Row C', 'The Lord of the Rings', 'J. R. R. Tolkien'),
))
;
$table->render();
干杯
您需要创建 TableStyle
实例并像这样设置 cellRowContentFormat
:
<?php
use Symfony\Component\Console\Helper\Table;
require_once 'vendor/autoload.php';
$output = new Symfony\Component\Console\Output\ConsoleOutput();
$table = new Table($output);
$style = new \Symfony\Component\Console\Helper\TableStyle();
$style->setCellRowContentFormat('<info> %s </info>');
$table->setColumnStyle(0, $style);
$table
->setHeaders(array('Col A', 'Col B', 'Col C'))
->setRows(array(
array('Row A', 'Divine Comedy', 'Dante Alighieri'),
array('Row B', 'A Tale of Two Cities', 'Charles Dickens'),
array('Row C', 'The Lord of the Rings', 'J. R. R. Tolkien'),
))
;
$table->render();
您可以查看 TableStyle::$cellRowContentFormat
和 TableStyle::$cellHeaderFormat
成员的默认值:默认情况下 $cellHeaderFormat
为 '<info>%s</info>'
,此值使单元格 header绿色(信息颜色)。
A Symfony Table 通常第一行的颜色与其他行不同。但是,我希望第一行和第一列具有相同的样式。我知道存在 TableStyle
但我无法弄清楚如何为第一列 + 第一行提供相同的样式。在此示例中 Table 我希望第一列也为绿色(文本行 A、行 B 和行 C)。
这个例子Table可以使用下面的代码生成:
$table = new Table($output);
$table
->setHeaders(array('Col A', 'Col B', 'Col C'))
->setRows(array(
array('Row A', 'Divine Comedy', 'Dante Alighieri'),
array('Row B', 'A Tale of Two Cities', 'Charles Dickens'),
array('Row C', 'The Lord of the Rings', 'J. R. R. Tolkien'),
))
;
$table->render();
干杯
您需要创建 TableStyle
实例并像这样设置 cellRowContentFormat
:
<?php
use Symfony\Component\Console\Helper\Table;
require_once 'vendor/autoload.php';
$output = new Symfony\Component\Console\Output\ConsoleOutput();
$table = new Table($output);
$style = new \Symfony\Component\Console\Helper\TableStyle();
$style->setCellRowContentFormat('<info> %s </info>');
$table->setColumnStyle(0, $style);
$table
->setHeaders(array('Col A', 'Col B', 'Col C'))
->setRows(array(
array('Row A', 'Divine Comedy', 'Dante Alighieri'),
array('Row B', 'A Tale of Two Cities', 'Charles Dickens'),
array('Row C', 'The Lord of the Rings', 'J. R. R. Tolkien'),
))
;
$table->render();
您可以查看 TableStyle::$cellRowContentFormat
和 TableStyle::$cellHeaderFormat
成员的默认值:默认情况下 $cellHeaderFormat
为 '<info>%s</info>'
,此值使单元格 header绿色(信息颜色)。