CloudCastle Cli API

Table
in package

FinalYes

Рендер таблицы с рамкой, выравниванием колонок и юникод-корректной шириной.

Ширина колонок считается по видимым символам (ANSI-оформление и многобайтные символы не ломают выравнивание). Стиль рамки задаётся BorderStyle, выравнивание — списком Align по колонкам.

Table of Contents

Methods

__construct()  : mixed
lines()  : Generator<int, string>
Построчный рендер таблицы без материализации результата.
render()  : string
Построить таблицу из заголовков и строк.
renderTo()  : void
Отрисовать таблицу прямо в приёмник вывода, не накапливая результат.

Methods

lines()

Построчный рендер таблицы без материализации результата.

public lines(array<int, string> $headers, array<int, array<int, string>> $rows) : Generator<int, string>

Позволяет печатать таблицы любого размера при постоянном расходе памяти: в куче живёт только текущая строка, а не вся таблица целиком.

Parameters
$headers : array<int, string>

заголовки колонок

$rows : array<int, array<int, string>>

строки таблицы

Return values
Generator<int, string> —

строки таблицы без перевода строки

render()

Построить таблицу из заголовков и строк.

public render(array<int, string> $headers, array<int, array<int, string>> $rows) : string
Parameters
$headers : array<int, string>

заголовки колонок

$rows : array<int, array<int, string>>

строки таблицы

Return values
string —

таблица, завершённая переводом строки

renderTo()

Отрисовать таблицу прямо в приёмник вывода, не накапливая результат.

public renderTo(Writer $writer, array<int, string> $headers, array<int, array<int, string>> $rows) : void
Parameters
$writer : Writer

приёмник вывода

$headers : array<int, string>

заголовки колонок

$rows : array<int, array<int, string>>

строки таблицы

On this page

Search results