Spec-Zone.ru › CakePHP 4.4

Класс ConsoleIo

Обёртка вокруг различных операций ввода-вывода, необходимых для задач оболочки.

Объединяет потоки stdout, stderr и stdin, предоставляя простой и согласованный интерфейс для использования оболочками. Этот класс также упрощает создание имитаций потоков при проведении юнит-тестов.

Пространство имён: Cake\Console

Константы

  • int
    NORMAL
    1

    Константа вывода для создания обычных оболочек.

  • int
    QUIET
    0

    Константы вывода для создания бесшумных оболочек.

  • int
    VERBOSE
    2

    Константа вывода для создания подробных оболочек.

Краткое описание свойств

  • $_err protected
    Cake\Console\ConsoleOutput

    Поток ошибок

  • $_helpers protected
    Cake\Console\HelperRegistry

    Регистр помощников.

  • $_in protected
    Cake\Console\ConsoleInput

    Поток ввода

  • $_lastWritten protected
    int

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

  • $_level protected
    int

    Текущий уровень вывода.

  • $_out protected
    Cake\Console\ConsoleOutput

    Поток вывода

  • $forceOverwrite protected
    bool

    Нужно ли перезаписывать файлы

  • $interactive protected
    bool

Краткое описание методов

  • __construct() public

    Конструктор

  • _getInput() protected

    Запрашивает у пользователя ввод и возвращает его.

  • abort() public

    Прерывает текущий процесс с исключением StopException.

  • ask() public

    Запрашивает у пользователя ввод и возвращает его.

  • askChoice() public

    Запрашивает у пользователя ввод на основе списка вариантов и возвращает его.

  • comment() public

    Удобный метод для out(), который оборачивает сообщение тегами

  • createFile() public

    Создаёт файл по заданному пути.

  • err() public

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

  • error() public

    Удобный метод для err(), который оборачивает сообщение тегами

  • getStyle() public

    Получить определённый стиль.

  • helper() public

    Отобразить помощника консоли

  • hr() public

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

  • info() public

    Удобный метод для out(), который оборачивает сообщение тегами

  • level() public

    Получить/установить текущий уровень вывода.

  • nl() public

    Возвращает одну или несколько последовательностей символов новой строки.

  • out() public

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

  • overwrite() public

    Перезаписывает часть уже выведенного текста.

  • quiet() public

    Вывод на всех уровнях.

  • setInteractive() public
  • setLoggers() public

    Подключает или отключает логгеры к выводу консоли.

  • setOutputAs() public

    Изменить режим вывода потока stdout

  • setStyle() public

    Добавляет новый стиль вывода.

  • styles() public

    Получить определённые стили.

  • success() public

    Удобный метод для out(), который оборачивает сообщение тегами

  • verbose() public

    Вывод на подробном уровне.

  • warning() public

    Удобный метод для err(), который оборачивает сообщение тегами

  • wrapMessageWithType() protected

    Оборачивает сообщение заданным типом сообщения, например:

END_OF_DOCUMENT_MARKER

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

__construct() public

__construct(Cake\Console\ConsoleOutput|null $out = null, Cake\Console\ConsoleOutput|null $err = null, Cake\Console\ConsoleInput|null $in = null, Cake\Console\HelperRegistry|null $helpers = null)

Конструктор

Параметры

Cake\Console\ConsoleOutput|null $out optional

Объект ConsoleOutput для stdout.

Cake\Console\ConsoleOutput|null $err optional

Объект ConsoleOutput для stderr.

Cake\Console\ConsoleInput|null $in optional

Объект ConsoleInput для stdin.

Cake\Console\HelperRegistry|null $helpers optional

Экземпляр HelperRegistry

_getInput() protected

_getInput(string $prompt, string|null $options, string|null $default): string

Запрашивает у пользователя ввод и возвращает его.

Параметры

string $prompt

Текст запроса.

string|null $options

Строка параметров. Передайте null, чтобы пропустить.

string|null $default

Значение ввода по умолчанию. Передайте null, чтобы пропустить.

Возвращает

string

abort() public

abort(string $message, int $code = CommandInterface::CODE_ERROR): void

Приостанавливает текущий процесс с StopException.

Параметры

string $message

Сообщение об ошибке.

int $code optional

Код ошибки.

Возвращает

void

Вызывает исключение

Cake\Console\Exception\StopException

ask() public

ask(string $prompt, string|null $default = null): string

Запрашивает у пользователя ввод и возвращает его.

Параметры

string $prompt

Текст запроса.

string|null $default optional

Значение ввода по умолчанию.

Возвращает

string

askChoice() public

askChoice(string $prompt, array<string>|string $options, string|null $default = null): string

Запрашивает у пользователя ввод на основе списка параметров и возвращает его.

Параметры

string $prompt

Текст запроса.

array<string>|string $options

Массив или строка параметров.

string|null $default optional

Значение ввода по умолчанию.

Возвращает

string

comment() public

comment(array<string>|string $message, int $newlines = 1, int $level = self::NORMAL): int|null

Вспомогательный метод для out(), который заключает сообщение в теги <comment>

Параметры

array<string>|string $message

Строка или массив строк для вывода

int $newlines optional

Количество символов новой строки для добавления

int $level optional

Уровень вывода сообщения, см. выше.

Возвращает

int|null

См. также

https://book.cakephp.org/4/en/console-and-shells.html#ConsoleIo::out

createFile() public

createFile(string $path, string $contents, bool $forceOverwrite = false): bool

Создает файл по заданному пути.

Этот метод запросит подтверждение у пользователя, если файл будет перезаписан. Установка forceOverwrite в true подавит это поведение и всегда будет перезаписывать файл.

Если пользователь ответит a последующие forceOverwrite параметры будут принудительно установлены в true, и все файлы будут перезаписаны.

Параметры

string $path

Путь для создания файла.

string $contents

Содержимое файла.

bool $forceOverwrite optional

Следует ли перезаписывать файл. Если true, вопрос о перезаписи существующих файлов задаваться не будет.

Возвращает

bool

Вызывает исключение

Cake\Console\Exception\StopException
Когда в качестве ответа на вопрос о перезаписи файла указано `q`.

err() public

err(array<string>|string $message = '', int $newlines = 1): int

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

Параметры

array<string>|string $message optional

Строка или массив строк для вывода

int $newlines optional

Количество символов новой строки для добавления

Возвращает

int

error() public

error(array<string>|string $message, int $newlines = 1): int

Вспомогательный метод для err(), который заключает сообщение в теги <error>

Параметры

array<string>|string $message

Строка или массив строк для вывода

int $newlines optional

Количество символов новой строки для добавления

Возвращает

int

См. также

https://book.cakephp.org/4/en/console-and-shells.html#ConsoleIo::err

getStyle() public

getStyle(string $style): array

Получить определенный стиль.

Параметры

string $style

Стиль для получения.

Возвращает

array

См. также

\Cake\Console\ConsoleOutput::getStyle()

helper() public

helper(string $name, array<string, mixed> $config = []): Cake\Console\Helper

Рендеринг помощника консоли

Создает и отображает вывод для объекта помощника. Если объект помощника еще не загружен, он будет загружен и сконструирован.

Параметры

string $name

Имя помощника для рендеринга

array<string, mixed> $config optional

Данные конфигурации для помощника.

Возвращает

Cake\Console\Helper

hr() public

hr(int $newlines = 0, int $width = 79): void

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

Параметры

int $newlines optional

Количество символов новой строки для добавления в начало и конец

int $width optional

Ширина линии, по умолчанию 79

Возвращает

void

info() public

info(array<string>|string $message, int $newlines = 1, int $level = self::NORMAL): int|null

Вспомогательный метод для out(), который заключает сообщение в теги <info>

Параметры

array<string>|string $message

Строка или массив строк для вывода

int $newlines optional

Количество символов новой строки для добавления

int $level optional

Уровень вывода сообщения, см. выше.

Возвращает

int|null

См. также

https://book.cakephp.org/4/en/console-and-shells.html#ConsoleIo::out

level() public

level(int|null $level = null): int

Получить/установить текущий уровень вывода.

Параметры

int|null $level optional

Текущий уровень вывода.

Возвращает

int

nl() public

nl(int $multiplier = 1): string

Возвращает одну или несколько последовательностей символов перевода строки.

Параметры

int $multiplier optional

Количество повторений последовательности символов перевода строки

Возвращает

string

out() public

out(array<string>|string $message = '', int $newlines = 1, int $level = self::NORMAL): int|null

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

Уровни вывода

Существует 3 встроенных уровня вывода. ConsoleIo::QUIET, ConsoleIo::NORMAL, ConsoleIo::VERBOSE. Уровни вывода verbose и quiet соответствуют переключателям вывода verbose и quiet в большинстве оболочек. Использование ConsoleIo::QUIET для сообщения означает, что оно всегда будет отображаться. Использование ConsoleIo::VERBOSE означает, что оно будет отображаться только при включенном подробном выводе.

Параметры

array<string>|string $message optional

Строка или массив строк для вывода

int $newlines optional

Количество символов новой строки для добавления

int $level optional

Уровень вывода сообщения, см. выше.

Возвращает

int|null

overwrite() public

overwrite(array<string>|string $message, int $newlines = 1, int|null $size = null): void

Перезаписывает уже выведенный текст.

Полезно для создания полосок прогресса или когда вы хотите заменить текст, уже выведенный на экран, новым текстом.

Предупреждение Вы не можете перезаписать текст, содержащий символы новой строки.

Параметры

array<string>|string $message

Сообщение для вывода.

int $newlines optional

Количество символов новой строки для добавления.

int|null $size optional

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

Возвращает

void

quiet() public

quiet(array<string>|string $message, int $newlines = 1): int|null

Вывод на всех уровнях.

Параметры

array<string>|string $message

Строка или массив строк для вывода

int $newlines optional

Количество символов новой строки для добавления

Возвращает

int|null

setInteractive() public

setInteractive(bool $value): void

Параметры

bool $value

Значение

Возвращает

void

setLoggers() public

setLoggers(int|bool $enable): void

Подключает или отключает логгеры к выводу консоли.

Используется для включения или выключения вывода потока логгирования в stdout и stderr. Если вы не хотите, чтобы весь вывод логов в stdout или stderr проходил через класс Log Cake, вызовите эту функцию со значением $enable=false.

Параметры

int|bool $enable

Используйте булево значение для включения/отключения всего логгирования. Используйте одну из констант уровня подробности (self::VERBOSE, self::QUIET, self::NORMAL) для управления уровнями логгирования. VERBOSE включает debug-логи, NORMAL не включает debug-логи, QUIET отключает notice, info и debug-логи.

Возвращает

void

setOutputAs() public

setOutputAs(int $mode): void

Изменить режим вывода потока stdout

Параметры

int $mode

Режим вывода.

Возвращает

void

См. также

\Cake\Console\ConsoleOutput::setOutputAs()

setStyle() public

setStyle(string $style, array $definition): void

Добавляет новый стиль вывода.

Параметры

string $style

Стиль для установки.

array $definition

Массивная структура определения стиля для изменения или создания.

Возвращает

void

См. также

\Cake\Console\ConsoleOutput::setStyle()

styles() public

styles(): array

Получает определенные стили.

Возвращает

array

См. также

\Cake\Console\ConsoleOutput::styles()

success() public

success(array<string>|string $message, int $newlines = 1, int $level = self::NORMAL): int|null

Удобный метод для out(), который оборачивает сообщение тегами

Параметры

array<string>|string $message

Строка или массив строк для вывода

int $newlines optional

Количество символов новой строки для добавления

int $level optional

Уровень вывода сообщения, см. выше.

Возвращает

int|null

См. также

https://book.cakephp.org/4/en/console-and-shells.html#ConsoleIo::out

verbose() public

verbose(array<string>|string $message, int $newlines = 1): int|null

Вывод на уровне verbose.

Параметры

array<string>|string $message

Строка или массив строк для вывода

int $newlines optional

Количество символов новой строки для добавления

Возвращает

int|null

warning() public

warning(array<string>|string $message, int $newlines = 1): int

Удобный метод для err(), который оборачивает сообщение тегами

Параметры

array<string>|string $message

Строка или массив строк для вывода

int $newlines optional

Количество символов новой строки для добавления

Возвращает

int

См. также

https://book.cakephp.org/4/en/console-and-shells.html#ConsoleIo::err

wrapMessageWithType() protected

wrapMessageWithType(string $messageType, array<string>|string $message): array<string>|string

Оборачивает сообщение заданным типом сообщения, например

Параметры

string $messageType

Тип сообщения, например "warning".

array<string>|string $message

Оборачиваемое сообщение.

Возвращает

array<string>|string

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

$_err protected

Поток ошибок

Тип

Cake\Console\ConsoleOutput

$_helpers protected

Регистр помощников.

Тип

Cake\Console\HelperRegistry

$_in protected

Поток ввода

Тип

Cake\Console\ConsoleInput

$_lastWritten protected

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

Тип

int

$_level protected

Текущий уровень вывода.

Тип

int

$_out protected

Поток вывода

Тип

Cake\Console\ConsoleOutput

$forceOverwrite protected

Надо ли перезаписывать файлы

Тип

bool

$interactive protected

Тип

bool

© 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.ConsoleIo.html

Spec-Zone.ru

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