Spec-Zone.ru › CakePHP 2.10

Класс ConsoleOutput

Обёртка для вывода информации из приложения оболочки. Может быть подключена к любому потоку ресурсов, которые могут быть использованы с fopen()

Может генерировать цветной вывод на консолях, которые его поддерживают. Есть несколько встроенных стилей

  • error Сообщения об ошибках.
  • warning Сообщения об ошибках.
  • info Информационные сообщения.
  • comment Дополнительный текст.
  • question Фиолетовый текст, используемый для подсказок пользователю

Определяя стили с помощью addStyle(), вы можете создавать пользовательские стили консоли.

Использование стилей в выводе

Вы можете форматировать вывод консоли с помощью тегов с именем стиля, который нужно применить. Изнутри объекта оболочки

$this->out('<warning>Overwrite:</warning> foo.php was overwritten.');

Это создаст оранжевый текст 'Overwrite:', в то время как остальной текст останется обычного цвета. Подробнее о определении собственных стилей см. ConsoleOutput::styles(). Вложенные стили в настоящее время не поддерживаются.

Прямые подклассы

  • ConsoleOutputStub
Пакет: Cake\Console
Авторские права: Авторские права (c) Cake Software Foundation, Inc. (https://cakefoundation.org)
Лицензия: MIT Лицензия
Расположение: Cake/Console/ConsoleOutput.php

Резюме констант

  • integer

    COLOR
    2
  • string

    LF
    PHP_EOL
  • integer

    PLAIN
    1
  • integer

    RAW
    0

Резюме свойств

  • $_backgroundColors protected static
    array
    цвета фона, используемые в цветном выводе.
  • $_foregroundColors protected static
    array
    цвета текста, используемые в цветном выводе.
  • $_lastWritten protected
    integer

    Количество байтов, последнене записанных в поток вывода, используемое при перезаписи предыдущего сообщения.

  • $_options protected static
    string
    опции форматирования для цветного вывода
  • $_output protected
    resource
    Дескриптор файла для вывода.
  • $_outputAs protected
    integer
    Текущий тип вывода. Управляется ConsoleOutput::outputAs();
  • $_styles protected static
    array

    Стили, доступные как теги в выводе консоли. Вы можете изменить эти стили с помощью ConsoleOutput::styles()

Резюме методов

  • __construct() public
    Конструктор объекта вывода.
  • __destruct() public
    Очистка и закрытие дескрипторов
  • _replaceTags() protected
    Замена тегов цветовыми кодами.
  • _write() protected
    Запись сообщения в поток вывода.
  • outputAs() public
    Получить/установить тип вывода для использования. Тип вывода определяет, как обрабатываются теги форматирования.
  • overwrite() public
    Перезапись части уже выведенного текста.
  • styleText() public
    Применение стилей к тексту.
  • styles() public
    Получение текущих предлагаемых стилей или добавление новых.
  • write() public

    Выводит одно или несколько сообщений в стандартный вывод. Если параметры не переданы, выводит только перевод строки.

Подробности методов

__construct()source public

__construct( string $stream 'php://stdout' )

Конструктор объекта вывода.

Проверяет среду консоли с красивым отображением. Ansicon и ConEmu поддерживают красивое отображение консоли в Windows.

Параметры

строка $stream необязательно 'php://stdout'
Идентификатор потока для записи вывода.

__destruct()source public

__destruct( )

Очистка и закрытие дескрипторов

_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.


END_OF_DOCUMENT_MARKER

write()source public

write( string|array $message , integer $newlines 1 )

Выводит одно или несколько сообщений в стандартный вывод. Если параметры не переданы, выводит только новую строку.

Параметры

строка|массив $message
Строка или массив строк для вывода
целое число $newlines необязательно 1
Количество добавляемых новых строк

Возвращает

целое число
Возвращает количество байтов, возвращенных при записи в стандартный вывод.

Подробное описание свойств

$_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
)

$_lastWrittensource

protected целое число

Количество байтов, последняя запись в поток вывода, используется при перезаписи предыдущего сообщения.

$_optionssource

protected static строка

параметры форматирования для цветного вывода

array(
    'bold' => 1,
    'underline' => 4,
    'blink' => 5,
    'reverse' => 7,
)

$_outputsource

protected ресурс

Дескриптор файла для вывода.

$_outputAssource

protected целое число

Текущий тип вывода. Изменяется с помощью ConsoleOutput::outputAs();

self::COLOR

$_stylessource

protected static массив

Стили, доступные как теги в консольном выводе. Вы можете изменить эти стили с помощью 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–2017 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/2.10/class-ConsoleOutput.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API