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