Spec-Zone.ru › CakePHP 3.8

Класс CompletionShell

Предоставляет оболочки для автодополнения команд, такие как bash.

Cake\Console\Shell использует Cake\ORM\Locator\LocatorAwareTrait , Cake\Log\LogTrait , Cake\Utility\MergeVariablesTrait , Cake\Datasource\ModelAwareTrait
Расширено Cake\Shell\CompletionShell
Пространство имён: Cake\Shell
Расположение: Shell/CompletionShell.php

Унаследованные константы

  • CODE_ERROR, CODE_SUCCESS, NORMAL, QUIET, VERBOSE

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

  • $tasks public
    array
    Содержит задачи для загрузки и создания экземпляров

Резюме магических свойств

  • $Command public
    Cake\Shell\Task\CommandTask

Унаследованные свойства

  • OptionParser, Tasks, _io, _taskMap, args, command, interactive, name, params, plugin, rootName, taskNames _tableLocator _modelFactories, _modelType, modelClass

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

  • _output() protected
    Выводит результаты в виде строки, разделённой пробелами
  • commands() public
    Список команд
  • fuzzy() public
    Предполагает автодополнение по всей строке аргумента
  • getOptionParser() public
    Получает экземпляр анализатора опций и настраивает его.
  • main() public
    Не вызывается оболочкой автодополнения — для любопытных пользователей
  • options() public
    Список опций для указанной команды
  • startup() public
    Не выводит заголовок, переопределяя метод startup
  • subcommands() public
    Список подкоманд для указанной команды

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

_output()source protected

_output( array $options = [] )

Выводит результаты в виде строки, разделённой пробелами

Параметры

массив $options необязательно []
Опции для вывода

Возвращаемое значение

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

commands()source public

commands( )

Список команд

Возвращаемое значение

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

fuzzy()source public

fuzzy( )

Предполагает автодополнение по всей строке аргумента

Возвращаемое значение

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

getOptionParser()source public

getOptionParser( )

Получает экземпляр анализатора опций и настраивает его.

Возвращаемое значение

Cake\Console\ConsoleOptionParser

Переопределяет

Cake\Console\Shell::getOptionParser()

main()source public

main( )

Не вызывается оболочкой автодополнения — для любопытных пользователей

Возвращаемое значение

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

options()source public

options( )

Список опций для указанной команды

Возвращаемое значение

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

startup()source public

startup( )

Не выводит заголовок, переопределяя метод startup

Переопределяет

Cake\Console\Shell::startup()

subcommands()source public

subcommands( )

Список подкоманд для указанной команды

Возвращаемое значение

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

Исключения

ReflectionException

Методы, унаследованные от Cake\Console\Shell

__construct()source public

__construct( Cake\Console\ConsoleIo $io = null , Cake\ORM\Locator\LocatorInterface $locator = null )

Создаёт экземпляр этого объекта Shell.

Параметры

Cake\Console\ConsoleIo $io необязательно null
Экземпляр io.
Cake\ORM\Locator\LocatorInterface $locator необязательно null
Экземпляр локализации таблиц.

Ссылка

https://book.cakephp.org/3.0/ru/console-and-shells.html#Shell

__debugInfo()source public

__debugInfo( )

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

Возвращаемое значение

массив

__get()source public

__get( string $name )

Перегрузка get для ленивого создания задач

Параметры

строка $name
Задача, которую нужно получить.

Возвращаемое значение

Cake\Console\Shell
Объект Task

_displayHelp()source protected

_displayHelp( string $command )

Выводит справку в правильном формате

Параметры

строка $command
Команда, для которой требуется справка.

Возвращаемое значение

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

_setOutputLevel()source protected

_setOutputLevel( )

Устанавливает уровень вывода на основе параметров.

Это переконфигурирует уровень вывода для out() и настроенное протоколирование stdout/stderr

_stop()source protected

_stop( integer|string $status = self::CODE_SUCCESS )

Останавливает выполнение текущего скрипта. Выбрасывает StopException для остановки выполнения.

Параметры

целое число|строка $status необязательно self::CODE_SUCCESS
см. https://secure.php.net/exit для значений

Исключения

Cake\Console\Exception\StopException

_validateTasks()source protected

_validateTasks( )

Проверяет, что задачи в карте задач действительно доступны

Исключения

RuntimeException
END_OF_DOCUMENT_MARKER

_welcome()source protected

_welcome( )

Отображает заголовок для оболочки

abort()source public

abort( string $message , integer $exitCode = self::CODE_ERROR )

Отображает отформатированное сообщение об ошибке и завершает приложение со статусом 1

Параметры

строка $message
Сообщение об ошибке
целое число $exitCode optional self::CODE_ERROR
Код завершения задачи оболочки.

Исключения

Cake\Console\Exception\StopException

Ссылка

https://book.cakephp.org/3.0/ru/console-and-shells.html#styling-output

clear()source public

clear( )

Очистить консоль

Ссылка

https://book.cakephp.org/3.0/ru/console-and-shells.html#console-output

createFile()source public

createFile( string $path , string $contents )

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

Параметры

строка $path
Куда поместить файл.
строка $contents
Содержимое для файла.

Возвращает

boolean
Успех

Ссылка

https://book.cakephp.org/3.0/ru/console-and-shells.html#creating-files

dispatchShell()source public

dispatchShell( )

Передать команду другой оболочке. Аналогично Object::requestAction(), но предназначено для запуска оболочек из других оболочек.

Использование:

Со строковой командой:

return $this->dispatchShell('schema create DbAcl');

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

С массивной командой:

return $this->dispatchShell('schema', 'create', 'i18n', '--dry');

С массивом, имеющим две пары ключ/значение: - command может принимать строку или массив. Представляет команду для диспетчеризации - extra может принимать массив дополнительных параметров, которые будут переданы диспетчеру. Эти параметры будут доступны в свойстве param вызываемой Shell

return $this->dispatchShell([ 'command' => 'schema create DbAcl', 'extra' => ['param' => 'value'] ]);

или

return $this->dispatchShell([ 'command' => ['schema', 'create', 'DbAcl'], 'extra' => ['param' => 'value'] ]);

Возвращает

целое число
Код завершения командной строки. 0 - успех.

Ссылка

https://book.cakephp.org/3.0/ru/console-and-shells.html#invoking-other-shells-from-your-shell

err()source public

err( string|array|null $message = null , integer $newlines = 1 )

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

Параметры

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

Возвращает

целое число|boolean
Количество байт, возвращённых при записи в stderr.

error()source public deprecated

error( string $title , string|null $message = null , integer $exitCode = self::CODE_ERROR )

Отображает отформатированное сообщение об ошибке и завершает приложение со статусом 1

Устарело

3.2.0 Используйте Shell::abort() вместо этого.

Параметры

строка $title
Название ошибки
строка|null $message optional null
Необязательное сообщение об ошибке
целое число $exitCode optional self::CODE_ERROR
Код завершения задачи оболочки.

Возвращает

целое число
Код ошибки

Исключения

Cake\Console\Exception\StopException

Ссылка

https://book.cakephp.org/3.0/ru/console-and-shells.html#styling-output

getIo()source public

getIo( )

Получить объект io для этой оболочки.

Возвращает

Cake\Console\ConsoleIo
Текущий объект ConsoleIo.

hasMethod()source public

hasMethod( string $name )

Проверить, имеет ли эта оболочка вызываемый метод с данным именем.

Параметры

строка $name
Имя метода для проверки.

Возвращает

boolean

Ссылка

https://book.cakephp.org/3.0/ru/console-and-shells.html#shell-tasks

hasTask()source public

hasTask( string $task )

Проверить, есть ли у этой оболочки задача с указанным именем.

Параметры

строка $task
Имя задачи для проверки.

Возвращает

boolean
Успех

Ссылка

https://book.cakephp.org/3.0/ru/console-and-shells.html#shell-tasks

helper()source public

helper( string $name , array $settings = [] )

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

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

Параметры

строка $name
Имя помощника для отображения
массив $settings optional []
Данные конфигурации для помощника.

Возвращает

Cake\Console\Helper
Созданный экземпляр помощника.

hr()source public

hr( integer $newlines = 0 , integer $width = 63 )

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

Параметры

целое число $newlines optional 0
Количество новых строк для предварительного и последующего добавления
целое число $width optional 63
Ширина строки, по умолчанию 63

Ссылка

https://book.cakephp.org/3.0/ru/console-and-shells.html#Shell::hr

in()source public

in( string $prompt , string|array|null $options = null , string|null $default = null )

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

Параметры

строка $prompt
Текст запроса.
строка|массив|null $options optional null
Массив или строка параметров.
строка|null $default optional null
Значение ввода по умолчанию.

Возвращает

смешанное
Либо значение по умолчанию, либо введённое пользователем.

Ссылка

https://book.cakephp.org/3.0/ru/console-and-shells.html#Shell::in

info()source public

info( string|array|null $message = null , integer $newlines = 1 , integer $level = Cake\Shell\Shell::NORMAL )

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

Параметры

строка|массив|null $message optional null
Строка или массив строк для вывода
целое число $newlines optional 1
Количество новых строк для добавления
целое число $level optional Cake\Shell\Shell::NORMAL
Уровень вывода сообщения, см. выше.

Возвращает

целое число|boolean
Количество байт, возвращённых при записи в stdout.

См.

https://book.cakephp.org/3.0/ru/console-and-shells.html#Shell::out

initialize()source public

initialize( )

Инициализирует оболочку, действует как конструктор для подклассов, позволяет настроить задачи перед выполнением оболочки

Ссылка

https://book.cakephp.org/3.0/ru/console-and-shells.html#Cake\Console\ConsoleOptionParser::initialize
END_OF_DOCUMENT_MARKER

io()source public deprecated

io( Cake\Console\ConsoleIo $io = null )

Получение/установка объекта io для этого командного интерфейса.

Устарело

3.5.0 Используйте getIo()/setIo() вместо этого.

Параметры

Cake\Console\ConsoleIo $io необязательный null
Объект ConsoleIo для использования.

Возвращает

Cake\Console\ConsoleIo
Текущий объект ConsoleIo.

loadTasks()source public

loadTasks( )

Загружает задачи, определённые в public $tasks

Возвращает

boolean

nl()source public

nl( integer $multiplier = 1 )

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

Параметры

целое число $multiplier необязательный 1
Количество раз, которое последовательность перевода строки должна быть повторена

Возвращает

строка

Ссылка

https://book.cakephp.org/3.0/ru/console-and-shells.html#Shell::nl

out()source public

out( string|array|null $message = null , integer $newlines = 1 , integer $level = Cake\Shell\Shell::NORMAL )

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

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

Существует 3 встроенных уровня вывода. Shell::ТИХО, Shell::НОРМАЛЬНО, Shell::ПОЛНОСТЬЮ. Уровни вывода verbose и quiet соответствуют переключателям вывода verbose и quiet , присутствующим в большинстве оболочек. Использование Shell::ТИХО для сообщения означает, что оно всегда будет отображаться. Использование Shell::ПОЛНОСТЬЮ означает, что оно будет отображаться только при включенном подробном выводе.

Параметры

строка|массив|null $message необязательный null
Строка или массив строк для вывода
целое число $newlines необязательный 1
Количество переводов строк для добавления
целое число $level необязательный Cake\Shell\Shell::НОРМАЛЬНО
Уровень вывода сообщения, см. выше.

Возвращает

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

Ссылка

https://book.cakephp.org/3.0/ru/console-and-shells.html#Shell::out

param()source public

param( string $name )

Безопасный доступ к значениям в $this->params.

Параметры

строка $name
Имя параметра для получения.

Возвращает

строка|логическое значение|null
Значение. Возвратит null, если значение не существует.

parseDispatchArguments()source public

parseDispatchArguments( array $args )

Парсит аргументы для метода dispatchShell().

Параметры

массив $args

Аргументы, полученные из метода dispatchShell() с помощью func_get_args()

Возвращает

массив

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


quiet()source public

quiet( string|array $message , integer $newlines = 1 )

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

Параметры

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

Возвращает

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

runCommand()source public

runCommand( array $argv , boolean $autoMethod = false , array $extra = [] )

Выполняет командный интерфейс с предоставленным argv.

Делегирует вызовы задачам и разрешает методы внутри класса. Команды ищутся в следующем порядке:

  • Метод в командном интерфейсе.
  • Совпадающее имя задачи.
  • main() метод.

Если командный интерфейс реализует метод main() , все отсутствующие вызовы методов будут отправлены в метод main() с исходным именем метода в argv.

Для вызова задач они обязательно должны быть представлены как подкоманды. Если вы определяете подкоманды, вы должны определить все подкоманды, которые необходимы вашему командному интерфейсу, независимо от того, являются ли они методами этого класса или методами задач.

Параметры

массив $argv
Массив аргументов для выполнения командного интерфейса. В этом массиве должно отсутствовать имя командного интерфейса.
логическое значение $autoMethod необязательный false

Установите значение true, чтобы разрешить вызов любого публичного метода, даже если он не был определен как подкоманда. Это используется ShellDispatcher, чтобы сделать создание простых командных интерфейсов проще.

массив $extra необязательный []

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

Возвращает

целое число|логическое значение|null

Ссылка

https://book.cakephp.org/3.0/ru/console-and-shells.html#the-cakephp-console

setIo()source public

setIo( Cake\Console\ConsoleIo $io )

Устанавливает объект io для этого командного интерфейса.

Параметры

Cake\Console\ConsoleIo $io
Объект ConsoleIo для использования.

setRootName()source public

setRootName( string $name )

Устанавливает имя корневой команды для вывода справки.

Параметры

строка $name
Имя корневой команды.

Возвращает


$this

shortPath()source public

shortPath( string $file )

Делает абсолютный путь к файлу более читаемым

Параметры

строка $file
Абсолютный путь к файлу

Возвращает

строка
сокращённый путь

Ссылка

https://book.cakephp.org/3.0/ru/console-and-shells.html#Shell::shortPath

success()source public

success( string|array|null $message = null , integer $newlines = 1 , integer $level = Cake\Shell\Shell::NORMAL )

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

Параметры

строка|массив|null $message необязательный null
Строка или массив строк для вывода
целое число $newlines необязательный 1
Количество переводов строк для добавления
целое число $level необязательный Cake\Shell\Shell::НОРМАЛЬНО
Уровень вывода сообщения, см. выше.

Возвращает

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

См. также

https://book.cakephp.org/3.0/ru/console-and-shells.html#Shell::out

verbose()source public

verbose( string|array $message , integer $newlines = 1 )

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

Параметры

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

Возвращает

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

warn()source public

warn( string|array|null $message = null , integer $newlines = 1 )

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

Параметры

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

Возвращает

целое число|логическое значение
Количество байтов, возвращённых при записи в стандартный поток ошибок.

См. также

https://book.cakephp.org/3.0/ru/console-and-shells.html#Shell::err
END_OF_DOCUMENT_MARKER ```

wrapMessageWithType()source protected устаревшее

wrapMessageWithType( string $messageType , string|array $message )

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

Устаревшее

3.6.0 Будет удалено в 4.0.0, так как больше не используется.

Параметры

строка $messageType
Тип сообщения, например, "предупреждение".
строка|массив $message
Сообщения для обёртки.

Возвращает

массив|строка
Сообщение, обернутое с заданным типом сообщения.

wrapText()source public

wrapText( string $text , integer|array $options = [] )

Оборачивает блок текста. Позволяет задать ширину и отступы блока текста.

Параметры

  • width Ширина обёртки. По умолчанию 72
  • wordWrap Оборачивать только по словам (пробелы). По умолчанию true.
  • indent Отступ текста с помощью предоставленной строки. По умолчанию null.

Параметры

строка $text
Текст для форматирования.
целое число|массив $options необязательно []
Массив опций для использования или целое число для обёртки текста.

Возвращает

строка
Оборачиваемый/отступаемый текст

См. также

\Cake\Utility\Text::wrap()

Ссылка

https://book.cakephp.org/3.0/ru/console-and-shells.html#Shell::wrapText

Методы, используемые из Cake\ORM\Locator\LocatorAwareTrait

getTableLocator()source public

getTableLocator( )

Получает локатор таблицы.

Возвращает

Cake\ORM\Locator\LocatorInterface

setTableLocator()source public

setTableLocator( Cake\ORM\Locator\LocatorInterface $tableLocator )

Устанавливает локатор таблицы.

Параметры

Cake\ORM\Locator\LocatorInterface $tableLocator
Экземпляр LocatorInterface.

Возвращает


$this

tableLocator()source public устаревшее

tableLocator( Cake\ORM\Locator\LocatorInterface $tableLocator = null )

Устанавливает локатор таблицы. Если параметры не переданы, он вернёт текущий используемый локатор.

Устаревшее

3.5.0 Используйте getTableLocator()/setTableLocator() вместо этого.

Параметры

Cake\ORM\Locator\LocatorInterface $tableLocator необязательно null
Экземпляр LocatorInterface.

Возвращает

Cake\ORM\Locator\LocatorInterface

Методы, используемые из Cake\Log\LogTrait

log()source public

log( mixed $msg , integer|string $level = LogLevel::ERROR , string|array $context = [] )

Удобный метод для записи сообщения в журнал. Подробнее о записи в журналы см. Log::write().

Параметры

смешанное $msg
Сообщение журнала.
целое число|строка $level необязательно LogLevel::ERROR
Уровень ошибки.
строка|массив $context необязательно []
Дополнительные данные журнала, относящиеся к этому сообщению.

Возвращает

булево
Успешность записи в журнал.

Методы, используемые из Cake\Utility\MergeVariablesTrait

_mergeProperty()source protected

_mergeProperty( string $property , array $parentClasses , array $options )

Объединяет одно свойство со значениями, объявленными во всех родительских классах.

Параметры

строка $property
Имя объединяемого свойства.
массив $parentClasses
Массив классов, которые необходимо объединить.
массив $options
Параметры для объединения свойства, см. _mergeVars().

_mergePropertyData()source protected

_mergePropertyData( array $current , array $parent , boolean $isAssoc )

Объединяет каждый из ключей в свойстве.

Параметры

массив $current
Текущее объединённое значение.
массив $parent
Значение родительского класса.
булево $isAssoc
Используется ли объединение в ассоциативном режиме.

Возвращает

смешанное
Обновлённое значение.

_mergeVars()source protected

_mergeVars( array $properties , array $options = [] )

Объединяет список $properties со всеми родительскими классами текущего класса.

Параметры:

  • associative - Список свойств, которые следует рассматривать как ассоциативные массивы. Свойства в этом списке будут переданы через Hash::normalize() перед объединением.

Параметры

массив $properties
Массив свойств и стратегии объединения для них.
массив $options необязательно []
Параметры для использования при объединении свойств.

Методы, используемые из Cake\Datasource\ModelAwareTrait

_setModelClass()source protected

_setModelClass( string $name )

Устанавливает свойства modelClass и modelKey на основе соглашений.

Если свойства уже установлены, они не будут перезаписаны.

Параметры

строка $name
Имя класса.

getModelType()source public

getModelType( )

Получить тип модели, который будет использоваться этим классом

Возвращает

строка

loadModel()source public

loadModel( string|null $modelClass = null , string|null $modelType = null )

Загружает и создаёт объекты репозитория, необходимые этому объекту.

Обычно используется для загрузки объектов таблицы ORM по мере необходимости. Также может использоваться для загрузки других типов объектов репозитория, которые использует ваше приложение.

Если поставщик репозитория не возвращает объект, будет выброшено исключение MissingModelException.

Параметры

строка|null $modelClass необязательно null

Имя класса модели для загрузки. По умолчанию $this->modelClass. Имя может быть псевдонимом, например, 'Post' или FQCN, например, App\Model\Table\PostsTable::class.

строка|null $modelType необязательно null
Тип репозитория для загрузки. По умолчанию значение modelType().

Возвращает

Cake\Datasource\RepositoryInterface
Созданный экземпляр модели.

Исключения

Cake\Datasource\Exception\MissingModelException
Если класс модели не найден.
InvalidArgumentException
При использовании типа, который не зарегистрирован.
UnexpectedValueException
Если тип модели не определён

modelFactory()source public

modelFactory( string $type , callable $factory )

Переопределяет существующую вызываемую функцию для создания репозиториев заданного типа.

Параметры

строка $type
Имя типа репозитория, для которого предназначена функция фабрики.
вызываемая функция $factory
Функция фабрики, используемая для создания экземпляров.

modelType()source public устаревшее

modelType( string|null $modelType = null )

Установить или получить тип модели, который будет использоваться этим классом

Устаревшее

3.5.0 Используйте getModelType()/setModelType() вместо этого.

Параметры

строка|null $modelType необязательно null
Тип модели или null для получения текущего

Возвращает

строка|Cake\Datasource\ModelAwareTrait
$this

setModelType()source public

setModelType( string $modelType )

Установить тип модели, который будет использоваться этим классом

Параметры

строка $modelType
Тип модели

Возвращает


$this

Магические методы, унаследованные от Cake\Console\Shell

main()

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

$taskssource

public array

Содержит задачи для загрузки и инициализации

['Command']

Подробное описание магических свойств

$Commandsource

public Cake\Shell\Task\CommandTask

© 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/3.8/class-Cake.Shell.CompletionShell.html

Spec-Zone.ru

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