Класс CommandListShell
Отображает список команд, доступных из консоли.
- Cake\Console\Shell использует Cake\ORM\Locator\LocatorAwareTrait , Cake\Log\LogTrait , Cake\Utility\MergeVariablesTrait , Cake\Datasource\ModelAwareTrait
-
Cake\Shell\CommandListShell
Устарело: 3.5.0 Заменено на Cake\Shell\HelpShell
Расположение: Shell/CommandListShell.php
Наследованные константы
Резюме свойств
-
$taskspublicСодержит задачи для загрузки и создания экземпляровarray
Резюме магических свойств
-
$Commandpublic
Наследованные свойства
-
OptionParser,Tasks,_io,_taskMap,args,command,interactive,name,params,plugin,rootName,taskNames_tableLocator_modelFactories,_modelType,modelClass
Резюме методов
- Вывод текста.
- Вывод в формате XML
- Отображает заголовок оболочки
- Получает экземпляр парсера параметров и настраивает его.
- Главная функция Выводит список оболочек.
- Запуск
Подробное описание методов
_asText()source protected deprecated
_asText( array $shellList )
Вывод текста.
Параметры
- массив
$shellList - Список оболочек.
_asXml()source protected deprecated
_asXml( array $shellList )
Вывод в формате XML
Параметры
- массив
$shellList - Список оболочек.
_welcome()source protected deprecated
_welcome( )
Отображает заголовок оболочки
Переопределяет
Cake\Console\Shell::_welcome() getOptionParser()source public deprecated
getOptionParser( )
Получает экземпляр парсера параметров и настраивает его.
Возвращает
Cake\Console\ConsoleOptionParserПереопределяет
Cake\Console\Shell::getOptionParser() Методы, унаследованные от Cake\Console\Shell
__construct()source public
__construct( Cake\Console\ConsoleIo $io = null , Cake\ORM\Locator\LocatorInterface $locator = null )
Создаёт экземпляр этой оболочки.
Параметры
-
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 - Команда, для которой требуется справка.
Возвращает
целое число|логическое значениеКоличество байтов, возвращённых из записи в stdout.
_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( )
Проверяет, доступны ли задачи в карте задач
Выбрасывает
RuntimeExceptionabort()source public
abort( string $message , integer $exitCode = self::CODE_ERROR )
Отображает отформатированное сообщение об ошибке и завершает приложение со статусом 1
Параметры
- строка
$message - Сообщение об ошибке
- целое число
$exitCodeнеобязательно self::CODE_ERROR - Код завершения для задачи оболочки.
Выбрасывает
Cake\Console\Exception\StopExceptionСсылка
https://book.cakephp.org/3.0/ru/console-and-shells.html#styling-outputclear()source public
clear( )
Очистить консоль
Ссылка
https://book.cakephp.org/3.0/ru/console-and-shells.html#console-outputcreateFile()source public
createFile( string $path , string $contents )
Создаёт файл по заданному пути
Параметры
- строка
$path - Куда поместить файл.
- строка
$contents - Содержимое для файла.
Возвращает
booleanУспех
Ссылка
https://book.cakephp.org/3.0/ru/console-and-shells.html#creating-filesdispatchShell()source public
dispatchShell( )
Пересылает команду другому Shell. Аналогично Object::requestAction(), но предназначено для запуска Shell из другого Shell.
Использование:
С строковой командой:
return $this->dispatchShell('schema create DbAcl'); Избегайте использования этого формата, если у вас есть строковые аргументы с пробелами. Вызванный Shell будет неправильно интерпретирован. Используйте этот формат только для простого перенаправления команд.
С массивом команд:
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'] ]);
Возвращает
integerКод завершения команды CLI. 0 — успех.
Ссылка
https://book.cakephp.org/3.0/ru/console-and-shells.html#invoking-other-shells-from-your-shellerr()source public
err( string|array|null $message = null , integer $newlines = 1 )
Выводит одно или несколько сообщений об ошибках в stderr. Если параметры не указаны, выводит только новую строку.
Параметры
- строка|массив|null
$messageнеобязательно null - Строка или массив строк для вывода
- целое число
$newlinesнеобязательно 1 - Количество новых строк для добавления
Возвращает
integer|booleanКоличество байтов, возвращённых при записи в stderr.
error()source public устаревшее
error( string $title , string|null $message = null , integer $exitCode = self::CODE_ERROR )
Отображает отформатированное сообщение об ошибке и завершает приложение с кодом состояния 1
Параметры
- строка
$title - Заголовок ошибки
- строка|null
$messageнеобязательно null - Необязательное сообщение об ошибке
- целое число
$exitCodeнеобязательно self::CODE_ERROR - Код завершения задачи Shell.
Возвращает
integerКод ошибки
Выбрасывает
Cake\Console\Exception\StopExceptionСсылка
https://book.cakephp.org/3.0/ru/console-and-shells.html#styling-outputgetIo()source public
getIo( )
Получить объект io для этого Shell.
Возвращает
Cake\Console\ConsoleIoТекущий объект ConsoleIo.
hasMethod()source public
hasMethod( string $name )
Проверить, имеет ли этот Shell вызываемый метод с заданным именем.
Параметры
- строка
$name - Имя метода для проверки.
Возвращает
booleanСсылка
https://book.cakephp.org/3.0/ru/console-and-shells.html#shell-taskshasTask()source public
hasTask( string $task )
Проверить, есть ли у этого Shell задача с указанным именем.
Параметры
- строка
$task - Имя задачи для проверки.
Возвращает
booleanУспех
Ссылка
https://book.cakephp.org/3.0/ru/console-and-shells.html#shell-taskshelper()source public
helper( string $name , array $settings = [] )
Отобразить Console Helper
Создать и отобразить вывод для объекта helper. Если объект helper ещё не загружен, он будет загружен и сконструирован.
Параметры
- строка
$name - Имя helper для отображения
- массив
$settingsнеобязательно [] - Данные конфигурации для helper.
Возвращает
Cake\Console\HelperСозданный экземпляр helper.
hr()source public
hr( integer $newlines = 0 , integer $width = 63 )
Выводит серию символов минус в стандартный вывод, служит визуальным разделителем.
Параметры
- целое число
$newlinesнеобязательно 0 - Количество новых строк перед и после
- целое число
$widthнеобязательно 63 - Ширина строки, по умолчанию 63
Ссылка
https://book.cakephp.org/3.0/ru/console-and-shells.html#Shell::hrin()source public
in( string $prompt , string|array|null $options = null , string|null $default = null )
Запрашивает у пользователя ввод и возвращает его.
Параметры
- строка
$prompt - Текст запроса.
- строка|массив|null
$optionsнеобязательно null - Массив или строка опций.
- строка|null
$defaultнеобязательно null - Значение ввода по умолчанию.
Возвращает
mixedЛибо значение по умолчанию, либо введенное пользователем значение.
Ссылка
https://book.cakephp.org/3.0/ru/console-and-shells.html#Shell::ininfo()source public
info( string|array|null $message = null , integer $newlines = 1 , integer $level = Cake\Shell\Shell::NORMAL )
Удобный метод для out(), который оборачивает сообщение тегами
Параметры
- строка|массив|null
$messageнеобязательно null - Строка или массив строк для вывода
- целое число
$newlinesнеобязательно 1 - Количество новых строк для добавления
- целое число
$levelнеобязательно Cake\Shell\Shell::NORMAL - Уровень вывода сообщения, см. выше.
Возвращает
integer|booleanКоличество байтов, возвращённых при записи в stdout.
См. также
https://book.cakephp.org/3.0/ru/console-and-shells.html#Shell::outinitialize()source public
initialize( )
Инициализирует Shell, действует как конструктор для подклассов, позволяет настроить задачи до выполнения Shell.
Ссылка
https://book.cakephp.org/3.0/ru/console-and-shells.html#Cake\Console\ConsoleOptionParser::initializeio()source public устаревшее
io( Cake\Console\ConsoleIo $io = null )
Получить/Установить объект io для этого Shell.
Параметры
-
Cake\Console\ConsoleIo$ioнеобязательно null - Объект ConsoleIo для использования.
Возвращает
Cake\Console\ConsoleIoТекущий объект ConsoleIo.
loadTasks()source public
loadTasks( )
Загружает задачи, определённые в public $tasks
Возвращает
booleannl()source public
nl( integer $multiplier = 1 )
Возвращает одну или несколько последовательностей символов новой строки.
Параметры
- целое число
$multiplierнеобязательно 1 - Количество повторений последовательности символов новой строки
Возвращает
строкаСсылка
https://book.cakephp.org/3.0/ru/console-and-shells.html#Shell::nlout()source public
out( string|array|null $message = null , integer $newlines = 1 , integer $level = Cake\Shell\Shell::NORMAL )
Выводит одно или несколько сообщений в стандартный вывод. Если параметры не переданы, выводит только символ новой строки.
Уровни вывода
Существует 3 встроенных уровня вывода. Shell::QUIET, Shell::NORMAL, Shell::VERBOSE. Уровни вывода verbose и quiet соответствуют переключателям вывода verbose и quiet в большинстве оболочек. Использование Shell::QUIET для сообщения означает, что оно всегда будет отображаться. В то время как использование Shell::VERBOSE означает, что оно будет отображаться только при включенном подробном выводе.
Параметры
- строка/массив/null
$messageнеобязательно null - Строка или массив строк для вывода
- целое число
$newlinesнеобязательно 1 - Количество символов новой строки для добавления
- целое число
$levelнеобязательно Cake\Shell\Shell::NORMAL - Уровень вывода сообщения, см. выше.
Возвращает
целое число/логическое значениеКоличество байтов, возвращённых из записи в стандартный вывод.
Ссылка
https://book.cakephp.org/3.0/ru/console-and-shells.html#Shell::outparam()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-consolesetIo()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::shortPathsuccess()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::NORMAL - Уровень вывода сообщения, см. выше.
Возвращает
целое число/логическое значениеКоличество байтов, возвращённых из записи в стандартный вывод.
См. также
https://book.cakephp.org/3.0/ru/console-and-shells.html#Shell::outverbose()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::errwrapMessageWithType()source protected deprecated
wrapMessageWithType( string $messageType , string|array $message )
Оборачивает сообщение заданным типом сообщения, например
Параметры
- строка
$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\LocatorInterfacesetTableLocator()source public
setTableLocator( Cake\ORM\Locator\LocatorInterface $tableLocator )
Устанавливает локатор таблицы.
Параметры
-
Cake\ORM\Locator\LocatorInterface$tableLocator - Экземпляр LocatorInterface.
Возвращаемое значение
$this
tableLocator()source public deprecated
tableLocator( Cake\ORM\Locator\LocatorInterface $tableLocator = null )
Устанавливает локатор таблицы. Если параметры не переданы, возвращает текущий используемый локатор.
Параметры
-
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 Table по мере необходимости. Также может использоваться для загрузки других типов объектов репозитория, которые использует ваше приложение.
Если поставщик репозитория не возвращает объект, будет выброшено исключение MissingModelException.
Параметры
- строка/null
$modelClassнеобязательно null - Имя класса модели для загрузки. По умолчанию $this->modelClass
- строка/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 deprecated
modelType( string|null $modelType = null )
Установить или получить тип модели, который будет использоваться этим классом
Параметры
- строка/null
$modelTypeнеобязательно null - Тип модели или null для получения текущего
Возвращаемое значение
строка|Cake\Datasource\ModelAwareTrait$this
setModelType()source public
setModelType( string $modelType )
Установить тип модели, который будет использоваться этим классом
Параметры
- строка
$modelType - Тип модели
Возвращаемое значение
$this
Магические методы, унаследованные от Cake\Console\Shell
main() |
Подробное описание свойств
Подробное описание магических свойств
$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.6/class-Cake.Shell.CommandListShell.html