Класс ConsoleOutput
Обёртка объекта для вывода информации из оболочки приложения. Может быть подключена к любому ресурсу потока, который можно использовать с fopen()
Может генерировать цветной вывод на консолях, которые его поддерживают. Существует несколько встроенных стилей
-
errorСообщения об ошибках. -
warningСообщения об ошибках. -
infoИнформационные сообщения. -
commentДополнительный текст. -
questionФиолетовый текст, используемый для запросов к пользователю
Определяя стили с помощью addStyle(), вы можете создавать пользовательские стили консоли.
Использование стилей в выводе
Вы можете форматировать вывод консоли, используя теги с именем стиля для применения. Изнутри объекта оболочки
$this->out('<warning>Overwrite:</warning> foo.php was overwritten.'); Это создаст оранжевый текст 'Overwrite:', в то время как остальной текст сохранит свой обычный цвет. Подробнее о определении собственных стилей см. ConsoleOutput::styles(). Вложенные стили в данный момент не поддерживаются.
Прямые подклассы
Резюме констант
-
integer2 -
stringPHP_EOL -
integer1 -
integer0
Резюме свойств
- цвета фона, используемые в цветном выводе.
array - цвета текста, используемые в цветном выводе.
array - Параметры форматирования для цветного вывода.
array -
$_outputprotectedДескриптор файла для вывода.resource -
$_outputAsprotectedТекущий тип вывода. Изменяется с помощью ConsoleOutput::outputAs();integer -
arrayСтили, доступные в виде тегов в выводе консоли. Вы можете изменить эти стили с помощью ConsoleOutput::styles()
Резюме методов
- __construct() publicСоздаёт объект вывода.
- __destruct() publicОчистка и закрытие дескрипторов
- _replaceTags() protectedЗамена тегов кодами цветов.
- _write() protectedЗаписывает сообщение в поток вывода.
- getOutputAs() publicПолучить тип вывода, определяющий, как обрабатываются теги форматирования.
- outputAs() publicПолучить/установить тип вывода для использования. Тип вывода, определяющий, как обрабатываются теги форматирования.
- setOutputAs() publicУстановить тип вывода, определяющий, как обрабатываются теги форматирования.
- styleText() publicПрименить стили к тексту.
- styles() publicПолучить текущие доступные стили или добавить новые.
- write() public
Выводит одно или несколько сообщений в stdout или stderr. Если параметры не переданы, выводится только перевод строки.
Подробности метода
__construct()source public
__construct( string $stream 'php://stdout' )
Создаёт объект вывода.
Проверяет среду красивой консоли. Ansicon и ConEmu позволяют иметь красивые консоли в Windows и поддерживаются.
Параметры
- string
$streamoptional 'php://stdout' - Идентификатор потока, в который нужно записать вывод.
_replaceTags()source protected
_replaceTags( array $matches )
Замена тегов кодами цветов.
Параметры
- array
$matches - Массив совпадений для замены.
Возвращаемое значение
string_write()source protected
_write( string $message )
Записывает сообщение в поток вывода.
Параметры
- string
$message - Сообщение для записи.
Возвращаемое значение
integer|booleanКоличество байтов, возвращённых при записи в выходной поток.
getOutputAs()source public
getOutputAs( )
Получить тип вывода, определяющий, как обрабатываются теги форматирования.
Возвращаемое значение
integeroutputAs()source public
outputAs( integer|null $type null )
Получить/установить тип вывода для использования. Тип вывода, определяющий, как обрабатываются теги форматирования.
Устарело
3.5.0 Используйте getOutputAs()/setOutputAs() вместо этого.Параметры
- integer|null
$typeoptional null - Тип вывода для использования. Должен быть одним из констант класса.
Возвращаемое значение
integer|nullnull или значение, если получение.
setOutputAs()source public
setOutputAs( integer $type )
Установить тип вывода, определяющий, как обрабатываются теги форматирования.
Параметры
- integer
$type - Тип вывода для использования. Должен быть одним из констант класса.
Исключения
InvalidArgumentExceptionв случае неподдерживаемого типа вывода.
styleText()source public
styleText( string $text )
Применить стили к тексту.
Параметры
- string
$text - Текст со стилями тегов.
Возвращаемое значение
stringСтрока с добавленными цветовыми кодами.
styles()source public
styles( string|null $style null , array|boolean|null $definition null )
Получить текущие доступные стили или добавить новые.
Получить определение стиля
$output->styles('error'); Получить все определения стилей
$output->styles();
Создать или изменить существующий стиль
$output->styles('annoy', ['text' => 'purple', 'background' => 'yellow', 'blink' => true]); Удалить стиль
$this->output->styles('annoy', false); Параметры
- string|null
$styleoptional null - Стиль для получения или создания.
- array|boolean|null
$definitionoptional null Массивная структура определения стиля для изменения или создания стиля или false для удаления стиля.
Возвращаемое значение
mixedЕсли вы получаете стили, будет возвращён стиль или null. Если вы создаёте/изменяете стили, будет возвращён true.
write()source public
write( string|array $message , integer $newlines 1 )
Выводит одно или несколько сообщений в стандартный вывод или стандартный поток ошибок. Если параметры не переданы, выводится только перевод строки.
Параметры
- string|array
$message - Строка или массив строк для вывода
- integer
$newlinesнеобязательно 1 - Количество символов новой строки для добавления
Возвращает
integer|booleanКоличество байтов, возвращенных при записи в выходной поток.
Подробное описание свойств
$_backgroundColorssource
protected static array
Цвета фона, используемые при цветном выводе.
[
'black' => 40,
'red' => 41,
'green' => 42,
'yellow' => 43,
'blue' => 44,
'magenta' => 45,
'cyan' => 46,
'white' => 47
] $_foregroundColorssource
protected static array
Цвета текста, используемые при цветном выводе.
[
'black' => 30,
'red' => 31,
'green' => 32,
'yellow' => 33,
'blue' => 34,
'magenta' => 35,
'cyan' => 36,
'white' => 37
] $_optionssource
protected static array
Параметры форматирования для цветного вывода.
[
'bold' => 1,
'underline' => 4,
'blink' => 5,
'reverse' => 7,
] $_outputAssource
protected integer
Текущий тип вывода. Изменяется с помощью ConsoleOutput::outputAs();
self::COLOR
$_stylessource
protected static array
Стили, доступные в качестве тегов в выводе консоли. Вы можете изменить эти стили с помощью ConsoleOutput::styles()
[
'emergency' => ['text' => 'red'],
'alert' => ['text' => 'red'],
'critical' => ['text' => 'red'],
'error' => ['text' => 'red'],
'warning' => ['text' => 'yellow'],
'info' => ['text' => 'cyan'],
'debug' => ['text' => 'yellow'],
'success' => ['text' => 'green'],
'comment' => ['text' => 'blue'],
'question' => ['text' => 'magenta'],
'notice' => ['text' => 'cyan']
]
© 2005–2018 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/3.5/class-Cake.Console.ConsoleOutput.html