Class yii\console\widgets\Table
Table 类在控制台中显示一个表。
例如,
$table = new Table();
echo $table
->setHeaders(['test1', 'test2', 'test3'])
->setRows([
['col1', 'col2', 'col3'],
['col1', 'col2', ['col3-0', 'col3-1', 'col3-2']],
])
->run();
或者
echo Table::widget([
'headers' => ['test1', 'test2', 'test3'],
'rows' => [
['col1', 'col2', 'col3'],
['col1', 'col2', ['col3-0', 'col3-1', 'col3-2']],
],
]);
公共属性
| 属性 | 类型 | 描述 | 被定义在 |
|---|---|---|---|
| $autoIdPrefix | string | The prefix to the automatically generated widget IDs. | yii\base\Widget |
| $behaviors | yii\base\Behavior[] | List of behaviors attached to this component | yii\base\Component |
| $chars | array | 表格字符 | yii\console\widgets\Table |
| $counter | integer | A counter used to generate $id for widgets. | yii\base\Widget |
| $headers | array | 表头 | yii\console\widgets\Table |
| $id | string | ID of the widget. | yii\base\Widget |
| $listPrefix | string | 前缀列表 | yii\console\widgets\Table |
| $rows | array | 表行 | yii\console\widgets\Table |
| $screenWidth | integer | 屏幕宽度 | yii\console\widgets\Table |
| $stack | yii\base\Widget[] | The widgets that are currently being rendered (not ended). | yii\base\Widget |
| $view | yii\web\View | The view object that can be used to render views or view files. | yii\base\Widget |
| $viewPath | string | The directory containing the view files for this widget. | yii\base\Widget |
公共方法
| 方法 | 描述 | 被定义在 |
|---|---|---|
| __call() | Calls the named method which is not a class method. | yii\base\Component |
| __clone() | This method is called after the object is created by cloning an existing one. | yii\base\Component |
| __construct() | Constructor. | yii\base\BaseObject |
| __get() | Returns the value of a component property. | yii\base\Component |
| __isset() | Checks if a property is set, i.e. defined and not null. | yii\base\Component |
| __set() | Sets the value of a component property. | yii\base\Component |
| __unset() | Sets a component property to be null. | yii\base\Component |
| afterRun() | This method is invoked right after a widget is executed. | yii\base\Widget |
| attachBehavior() | Attaches a behavior to this component. | yii\base\Component |
| attachBehaviors() | Attaches a list of behaviors to the component. | yii\base\Component |
| beforeRun() | This method is invoked right before the widget is executed. | yii\base\Widget |
| begin() | Begins a widget. | yii\base\Widget |
| behaviors() | Returns a list of behaviors that this component should behave as. | yii\base\Component |
| canGetProperty() | Returns a value indicating whether a property can be read. | yii\base\Component |
| canSetProperty() | Returns a value indicating whether a property can be set. | yii\base\Component |
| className() | Returns the fully qualified name of this class. | yii\base\BaseObject |
| detachBehavior() | Detaches a behavior from the component. | yii\base\Component |
| detachBehaviors() | Detaches all behaviors from the component. | yii\base\Component |
| end() | Ends a widget. | yii\base\Widget |
| ensureBehaviors() | Makes sure that the behaviors declared in behaviors() are attached to this component. | yii\base\Component |
| getBehavior() | Returns the named behavior object. | yii\base\Component |
| getBehaviors() | Returns all behaviors attached to this component. | yii\base\Component |
| getId() | Returns the ID of the widget. | yii\base\Widget |
| getView() | Returns the view object that can be used to render views or view files. | yii\base\Widget |
| getViewPath() | Returns the directory containing the view files for this widget. | yii\base\Widget |
| hasEventHandlers() | Returns a value indicating whether there is any handler attached to the named event. | yii\base\Component |
| hasMethod() | Returns a value indicating whether a method is defined. | yii\base\Component |
| hasProperty() | Returns a value indicating whether a property is defined for this component. | yii\base\Component |
| init() | Initializes the object. | yii\base\Widget |
| off() | Detaches an existing event handler from this component. | yii\base\Component |
| on() | Attaches an event handler to an event. | yii\base\Component |
| render() | Renders a view. | yii\base\Widget |
| renderFile() | Renders a view file. | yii\base\Widget |
| run() | yii\console\widgets\Table | |
| setChars() | 设置表格字符。 | yii\console\widgets\Table |
| setHeaders() | 设置表头。 | yii\console\widgets\Table |
| setId() | Sets the ID of the widget. | yii\base\Widget |
| setListPrefix() | 设置列表前缀。 | yii\console\widgets\Table |
| setRows() | 设置表格行。 | yii\console\widgets\Table |
| setScreenWidth() | 设置屏幕宽度。 | yii\console\widgets\Table |
| setView() | Sets the view object to be used by this widget. | yii\base\Widget |
| trigger() | Triggers an event. | yii\base\Component |
| widget() | Creates a widget instance and runs it. | yii\base\Widget |
受保护的方法
| 方法 | 描述 | 被定义在 |
|---|---|---|
| calculateRowHeight() | 计算行的高度。 | yii\console\widgets\Table |
| calculateRowsSize() | 计算要在控制台中绘制列锚点的行的大小。 | yii\console\widgets\Table |
| getScreenWidth() | 获取屏幕宽度。
如果无法确定屏幕宽度,将设置默认值 123。 |
yii\console\widgets\Table |
| renderRow() | 将一行数据呈现为字符串。 | yii\console\widgets\Table |
| renderSeparator() | 渲染分隔符。 | yii\console\widgets\Table |
Events
| 事件 | 类型 | 描述 | 被定义在 |
|---|---|---|---|
| EVENT_AFTER_RUN | yii\base\WidgetEvent | An event raised right after executing a widget. (自版本 2.0.11 可用) | yii\base\Widget |
| EVENT_BEFORE_RUN | yii\base\WidgetEvent | An event raised right before executing a widget. (自版本 2.0.11 可用) | yii\base\Widget |
| EVENT_INIT | yii\base\Event | An event that is triggered when the widget is initialized via init(). (自版本 2.0.11 可用) | yii\base\Widget |
常量
| 常量 | 值 | 描述 | 被定义在 |
|---|---|---|---|
| CHAR_BOTTOM | 'bottom' | yii\console\widgets\Table | |
| CHAR_BOTTOM_LEFT | 'bottom-left' | yii\console\widgets\Table | |
| CHAR_BOTTOM_MID | 'bottom-mid' | yii\console\widgets\Table | |
| CHAR_BOTTOM_RIGHT | 'bottom-right' | yii\console\widgets\Table | |
| CHAR_LEFT | 'left' | yii\console\widgets\Table | |
| CHAR_LEFT_MID | 'left-mid' | yii\console\widgets\Table | |
| CHAR_MID | 'mid' | yii\console\widgets\Table | |
| CHAR_MIDDLE | 'middle' | yii\console\widgets\Table | |
| CHAR_MID_MID | 'mid-mid' | yii\console\widgets\Table | |
| CHAR_RIGHT | 'right' | yii\console\widgets\Table | |
| CHAR_RIGHT_MID | 'right-mid' | yii\console\widgets\Table | |
| CHAR_TOP | 'top' | yii\console\widgets\Table | |
| CHAR_TOP_LEFT | 'top-left' | yii\console\widgets\Table | |
| CHAR_TOP_MID | 'top-mid' | yii\console\widgets\Table | |
| CHAR_TOP_RIGHT | 'top-right' | yii\console\widgets\Table | |
| CONSOLE_SCROLLBAR_OFFSET | 3 | yii\console\widgets\Table | |
| DEFAULT_CONSOLE_SCREEN_WIDTH | 120 | yii\console\widgets\Table |
属性详情
表格字符
表头
前缀列表
表行
屏幕宽度
方法详情
计算行的高度。
| protected integer calculateRowHeight($row) | ||
| $row | array | |
| return | integer | 每单元最大行数 |
|---|---|---|
计算要在控制台中绘制列锚点的行的大小。
| protected void calculateRowsSize() |
获取屏幕宽度。
如果无法确定屏幕宽度,将设置默认值 123。
| protected integer getScreenWidth() | ||
| return | integer | 屏幕宽度 |
|---|---|---|
将一行数据呈现为字符串。
| protected string renderRow(array $row, $spanLeft, $spanMiddle, $spanRight) | ||
| $row | array | 数据行 |
| $spanLeft | string | 左边框的字符 |
| $spanMiddle | string | 中间边框的字符 |
| $spanRight | string | 右边框的字符 |
渲染分隔符。
| protected string renderSeparator($spanLeft, $spanMid, $spanMidMid, $spanRight) | ||
| $spanLeft | string | 左边框的字符 |
| $spanMid | string | 中间边框的字符 |
| $spanMidMid | string | Middle-middle 边框的字符 |
| $spanRight | string | 右边框的字符 |
| return | string | 生成的分隔行 |
|---|---|---|
| public string run() | ||
| return | string | 渲染表 |
|---|---|---|
设置表格字符。
| public $this setChars(array $chars) | ||
| $chars | array | 表格字符 |
设置表头。
| public $this setHeaders(array $headers) | ||
| $headers | array | 表头 |
设置列表前缀。
| public $this setListPrefix($listPrefix) | ||
| $listPrefix | string | 前缀列表 |
设置表格行。
| public $this setRows(array $rows) | ||
| $rows | array | 表行 |
设置屏幕宽度。
| public $this setScreenWidth($width) | ||
| $width | integer | 屏幕宽度 |