Класс ConsoleOutput
Обёртка для вывода информации из приложения оболочки. Может быть подключена к любому потоку ресурсов, который можно использовать с fopen()
Может генерировать цветной вывод на консолях, которые его поддерживают. Есть несколько встроенных стилей
-
errorСообщения об ошибках. -
warningСообщения об ошибках. -
infoИнформационные сообщения. -
commentДополнительный текст. -
questionФиолетовый текст, используемый для запросов пользователя
Определяя стили с помощью addStyle(), вы можете создавать пользовательские стили консоли.
Использование стилей в выводе
Вы можете форматировать вывод консоли с помощью тегов с именем применяемого стиля. Изнутри объекта оболочки
$this->out('<warning>Overwrite:</warning> foo.php was overwritten.'); Это создаст оранжевый текст 'Overwrite:', в то время как остальной текст останется обычного цвета. Чтобы узнать больше о определении собственных стилей, см. ConsoleOutput::styles(). Вложенные стили в настоящее время не поддерживаются.
Постоянные значения
-
intCOLOR2
Цветной вывод - Преобразуйте известные теги в ANSI-коды цветных экранов.
-
stringLFPHP_EOL
Постоянная величина для новой строки.
-
intPLAIN1
Обычный вывод - теги будут удалены.
-
intRAW0
Постоянная величина для вывода в исходном формате - без модификации текста вывода.
Резюме свойств
- $_backgroundColors protected static
array<string, int>Цвета фона, используемые в цветном выводе.
- $_foregroundColors protected static
array<string, int>Цвета текста, используемые в цветном выводе.
- $_options protected static
array<string, int>Параметры форматирования для цветного вывода.
- $_output protected
resourceДескриптор файла для вывода.
- $_outputAs protected
intТекущий тип вывода.
- $_styles protected static
array<string, array>Стили, которые доступны в виде тегов в выводе консоли. Вы можете изменить эти стили с помощью ConsoleOutput::styles()
Краткое описание методов
-
__construct() public
Создать объект вывода.
-
__destruct() public
Очистить и закрыть дескрипторы.
-
_replaceTags() protected
Заменить теги цветовыми кодами.
-
_write() protected
Записать сообщение в поток вывода.
-
getOutputAs() public
Получить тип вывода для обработки тегов форматирования.
-
getStyle() public
Получить текущие доступные стили.
-
setOutputAs() public
Установить тип вывода для обработки тегов форматирования.
-
setStyle() public
Установить стиль.
-
styleText() public
Применить стили к тексту.
-
styles() public
Получить все определения стилей.
-
write() public
Выводит одно или несколько сообщений в stdout или stderr. Если параметры не переданы, выводится только перевод строки.
Подробное описание методов
__construct() public
__construct(string $stream = 'php://stdout')
Создать объект вывода.
Проверяет наличие среды консоли с красивым отображением. Ansicon и ConEmu поддерживают красивую консоль на Windows.
Параметры
-
string$stream optional Идентификатор потока для записи вывода.
__destruct() public
__destruct()
Очистить и закрыть дескрипторы.
_replaceTags() protected
_replaceTags(array<string, string> $matches): string
Заменить теги цветовыми кодами.
Параметры
-
array<string, string>$matches Массив совпадений для замены.
Возвращает
string_write() protected
_write(string $message): int
Записать сообщение в поток вывода.
Параметры
-
string$message Сообщение для записи.
Возвращает
intgetOutputAs() public
getOutputAs(): int
Получить тип вывода для обработки тегов форматирования.
Возвращает
intgetStyle() public
getStyle(string $style): array
Получить текущие доступные стили.
Параметры
-
string$style Стиль для получения.
Возвращает
arraysetOutputAs() public
setOutputAs(int $type): void
Установить тип вывода для обработки тегов форматирования.
Параметры
-
int$type Тип вывода. Должен быть одним из констант класса.
Возвращает
voidИсключения
InvalidArgumentExceptionв случае неподдерживаемого типа вывода.
setStyle() public
setStyle(string $style, array $definition): void
Установить стиль.
Создаёт или изменяет существующий стиль.
$output->setStyle('annoy', ['text' => 'purple', 'background' => 'yellow', 'blink' => true]); Удалить стиль
$this->output->setStyle('annoy', []); Параметры
-
string$style Стиль для установки.
-
array$definition Массивная структура определения стиля для изменения или создания.
Возвращает
voidstyleText() public
styleText(string $text): string
Применить стили к тексту.
Параметры
-
string$text Текст с тегами стилей.
Возвращает
stringstyles() public
styles(): array<string, mixed>
Получить все определения стилей.
Возвращает
array<string, mixed>write() public
write(array<string>|string $message, int $newlines = 1): int
Выводит одно или несколько сообщений в stdout или stderr. Если параметры не переданы, выводится только перевод строки.
Параметры
-
array<string>|string$message Строка или массив строк для вывода.
-
int$newlines optional Количество переводов строк для добавления.
Возвращает
intПодробное описание свойств
$_backgroundColors protected static
Цвета фона, используемые в цветном выводе.
Тип
array<string, int>$_foregroundColors protected static
Цвета текста, используемые в цветном выводе.
Тип
array<string, int>$_options protected static
Параметры форматирования для цветного вывода.
Тип
array<string, int>$_output protected
Дескриптор файла для вывода.
Тип
resource$_outputAs protected
Текущий тип вывода.
Тип
int$_styles protected static
Стили, доступные как теги в выводе консоли. Вы можете изменить эти стили с помощью ConsoleOutput::styles()
Тип
array<string, array>
© 2005–present The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
https://api.cakephp.org/4.4/class-Cake.Console.ConsoleOutput.html