Класс CommandTask
Базовый класс для отражения команд оболочки Shell.
- Объект
-
Оболочка -
AppShell -
CommandTask
Авторские права: Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
Лицензия: MIT License
Расположение Cake/Console/Command/Task/CommandTask.php
Подробное описание методов
_appendShellsисходный код защищенный
_appendShells( string $type , array $shells , array $shellList )
Сканирует указанные пути на наличие оболочек и добавляет их в $shellList
Параметры
- строка
$type - Тип объекта.
- массив
$shells - Имя оболочки.
- массив
$shellList - $shellList Список оболочек.
getShellисходный код общедоступный
getShell( mixed $commandName )
Получить экземпляр Shell для данной команды
Параметры
- смешанный
$commandName - Команда, которую вы хотите.
Возвращает
mixedсмешанный
getShellListисходный код общедоступный
getShellList( )
Получает список команд оболочки.
Возвращает
arrayмассив
optionsисходный код общедоступный
options( mixed $commandName )
Получить экземпляр Shell для данной команды
Параметры
- смешанный
$commandName - Команда для получения параметров.
Возвращает
arrayмассив
subCommandsисходный код общедоступный
subCommands( string $commandName )
Возвращает список подкоманд для данной команды
Параметры
- строка
$commandName - Команда, для которой вы хотите подкоманды.
Возвращает
arrayмассив
Методы, унаследованные от Shell
__constructисходный код общедоступный
__construct( ConsoleOutput $stdout null , ConsoleOutput $stderr null , ConsoleInput $stdin null )
Конструирует этот экземпляр Shell.
Параметры
-
ConsoleOutput$stdoutнеобязательно null - Объект ConsoleOutput для stdout.
-
ConsoleOutput$stderrнеобязательно null - Объект ConsoleOutput для stderr.
-
ConsoleInput$stdinнеобязательно null - Объект ConsoleInput для stdin.
Ссылка
http://book.cakephp.org/2.0/en/console-and-shells.html#ShellПереопределяет
Object::__construct() __getисходный код общедоступный
__get( string $name )
Перегрузка get для ленивого построения задач
Параметры
- строка
$name - Имя свойства для доступа.
Возвращает
ShellОбъект задачи
__issetисходный код общедоступный
__isset( string $name )
Ленично загружает модели с помощью метода loadModel(), если объявлены в $uses
Параметры
- строка
$name - Имя модели для поиска.
_checkUnitTestисходный код защищенный
_checkUnitTest( )
Действие по созданию тестового примера
Возвращает
booleanУспех
_controllerNameисходный код защищенный
_controllerName( string $name )
Создаёт правильное множественное имя контроллера для указанного имени класса контроллера
Параметры
- строка
$name - Имя класса контроллера
Возвращает
stringМножественное имя контроллера
_controllerPathисходный код защищенный
_controllerPath( string $name )
Создаёт правильный путь к контроллеру для указанного имени класса контроллера
Параметры
- строка
$name - Имя класса контроллера
Возвращает
stringПуть к контроллеру
_displayHelpисходный код защищенный
_displayHelp( string $command )
Отображает справку в правильном формате
Параметры
- строка
$command - Команда, для которой требуется справка.
_getInputисходный код защищенный
_getInput( string $prompt , string|array $options , string $default )
Запрашивает у пользователя ввод и возвращает его.
Параметры
- строка
$prompt - Текст запроса.
- строка|массив
$options - Массив или строка параметров.
- строка
$default - Значение ввода по умолчанию.
Возвращает
Eitherзначение по умолчанию или ввод, предоставленный пользователем.
_loadModelsисходный код защищенный
_loadModels( )
Если $uses массив, загружает каждую модель из массива
Возвращает
booleanбулево
_modelKeyисходный код защищенный
_modelKey( string $name )
Создаёт правильное подчеркнутое имя модели для ассоциаций
Параметры
- строка
$name - Имя класса модели
Возвращает
stringЕдинственное имя модели
_modelNameисходный код защищенный
_modelName( string $name )
Создаёт правильное именованное (ед. число) имя модели для указанного имени
Параметры
- строка
$name - Имя
Возвращает
stringКамелизированное и единственное имя модели
_modelNameFromKeyисходный код защищенный
_modelNameFromKey( string $key )
Создаёт правильное имя модели из внешнего ключа
Параметры
- строка
$key - Внешний ключ
Возвращает
stringИмя модели
_pluginPathисходный код защищенный
_pluginPath( string $pluginName )
Находит правильный путь для плагина. Сканирует $pluginPaths для нужного плагина.
Параметры
- строка
$pluginName - Имя плагина, например, DebugKit
Возвращает
stringпуть к плагину.
_pluralHumanNamesource protected
_pluralHumanName( string $name )
Создаёт множественное число человекопонятного имени, используемого в представлениях.
Параметры
- строка
$name - Имя контроллера
Возвращает
stringМножественное число человекопонятного имени
_pluralNamesource protected
_pluralName( string $name )
Создаёт множественное число имени для представлений.
Параметры
- строка
$name - Используемое имя
Возвращает
stringМножественное число имени для представлений
_singularHumanNamesource protected
_singularHumanName( string $name )
Создаёт единственное число человекопонятного имени, используемого в представлениях.
Параметры
- строка
$name - Имя контроллера
Возвращает
stringЕдинственное число человекопонятного имени
_singularNamesource protected
_singularName( string $name )
создаёт единственное число имени для использования в представлениях.
Параметры
- строка
$name - Значение множественного числа с нижним подчеркиванием.
Возвращает
stringИмя
_useLoggersource protected
_useLogger( boolean $enable true )
Используется для включения или выключения вывода потока логов в stdout и stderr. Если вы не хотите видеть всё, что регистрируется через CakeLog в stdout или stderr, вызовите эту функцию с первым параметром false.
Параметры
- логическое значение
$enableнеобязательно true - Включить или выключить вывод CakeLog
clearsource public
clear( )
Очистить консоль.
Ссылка
http://book.cakephp.org/2.0/ru/console-and-shells.html#Shell::clearcreateFilesource public
createFile( string $path , string $contents )
Создаёт файл по заданному пути.
Параметры
- строка
$path - Куда поместить файл.
- строка
$contents - Содержимое файла.
Возвращает
booleanУспех
Ссылка
http://book.cakephp.org/2.0/ru/console-and-shells.html#Shell::createFiledispatchShellsource public
dispatchShell( )
Отправляет команду другой оболочке. Аналогично Object::requestAction(), но предназначено для запуска оболочек из других оболочек.
Использование:
Со строковой командой:
return $this->dispatchShell('schema create DbAcl');
Избегайте использования этой формы, если у вас есть строковые аргументы с пробелами. Отправленная команда будет вызвана неправильно. Используйте эту форму только для простого диспетчеризации команд.
С массивом команд:
return $this->dispatchShell('schema', 'create', 'i18n', '--dry');
Возвращает
mixedРезультат работы другой оболочки.
Ссылка
http://book.cakephp.org/2.0/ru/console-and-shells.html#Shell::dispatchShellerrsource public
err( string|array $message null , integer $newlines 1 )
Выводит одно или несколько сообщений об ошибках в stderr. Если нет параметров, выводит просто перенос строки.
Параметры
- строка|массив
$messageнеобязательно null - Строка или массив строк для вывода
- целое число
$newlinesнеобязательно 1 - Количество переносов строк для добавления
Ссылка
http://book.cakephp.org/2.0/ru/console-and-shells.html#Shell::errerrorsource public
error( string $title , string $message null )
Отображает отформатированное сообщение об ошибке и завершает приложение с кодом состояния 1
Параметры
- строка
$title - Заголовок ошибки
- строка
$messageнеобязательно null - Необязательное сообщение об ошибке
Ссылка
http://book.cakephp.org/2.0/ru/console-and-shells.html#Shell::errorgetOptionParsersource public
getOptionParser( )
Получает экземпляр парсера опций и настраивает его.
Переопределяя этот метод, вы можете настроить ConsoleOptionParser перед его возвращением.
Возвращает
ConsoleOptionParserConsoleOptionParser
Ссылка
http://book.cakephp.org/2.0/ru/console-and-shells.html#Shell::getOptionParserhasMethodsource public
hasMethod( string $name )
Проверяет, есть ли у этой оболочки вызываемый метод с заданным именем.
Параметры
- строка
$name - Имя метода для проверки.
Возвращает
booleanbool
Ссылка
http://book.cakephp.org/2.0/ru/console-and-shells.html#Shell::hasMethodhasTasksource public
hasTask( string $task )
Проверяет, есть ли у этой оболочки задача с указанным именем.
Параметры
- строка
$task - Имя задачи для проверки.
Возвращает
booleanУспех
Ссылка
http://book.cakephp.org/2.0/ru/console-and-shells.html#Shell::hasTaskhrsource public
hr( integer $newlines 0 , integer $width 63 )
Выводит серию символов минус в стандартный вывод, служит визуальным разделителем.
Параметры
- целое число
$newlinesнеобязательно 0 - Количество переносов строк для добавления перед и после
- целое число
$widthнеобязательно 63 - Ширина строки, по умолчанию 63
Ссылка
http://book.cakephp.org/2.0/ru/console-and-shells.html#Shell::hrinsource public
in( string $prompt , string|array $options null , string $default null )
Запрашивает у пользователя ввод и возвращает его.
Параметры
- строка
$prompt - Текст запроса.
- строка|массив
$optionsнеобязательно null - Массив или строка опций.
- строка
$defaultнеобязательно null - Значение ввода по умолчанию.
Возвращает
mixedЗначение по умолчанию или введенное пользователем.
Ссылка
http://book.cakephp.org/2.0/ru/console-and-shells.html#Shell::ininitializesource public
initialize( )
Инициализирует оболочку, выполняет роль конструктора для подклассов, позволяет настраивать задачи до выполнения оболочки.
Ссылка
http://book.cakephp.org/2.0/ru/console-and-shells.html#Shell::initializeloadModelsource public
loadModel( string $modelClass null , mixed $id null )
Загружает и инициализирует модели, необходимые для этого командного интерпретатора.
Параметры
- строка
$modelClassнеобязательно null - Имя класса модели для загрузки
- смешанный
$idнеобязательно null - Изначальный идентификатор, который должна иметь созданная модель
Возвращает
mixedtrue, если найдена одиночная модель и создан экземпляр, возвращает ошибку, если модель не найдена.
Выбрасывает
MissingModelExceptionесли класс модели не может быть найден.
loadTaskssource public
loadTasks( )
Загружает задачи, определённые в public $tasks
Возвращает
booleanbool
nlsource public
nl( integer $multiplier 1 )
Возвращает последовательность одиночной или множественных символов новой строки.
Параметры
- целое число
$multiplierнеобязательно 1 - Количество повторений последовательности символов новой строки
Возвращает
stringстрока
Ссылка
http://book.cakephp.org/2.0/ru/console-and-shells.html#Shell::nloutsource public
out( string|array $message null , integer $newlines 1 , integer $level Shell::NORMAL )
Выводит одно или несколько сообщений в стандартный вывод. Если параметры не переданы, выводится только символ новой строки.
Уровни вывода
Существует 3 встроенных уровня вывода. Shell::QUIET, Shell::NORMAL, Shell::VERBOSE. Уровни вывода verbose и quiet соответствуют переключателям вывода verbose и quiet в большинстве командных интерпретаторов. Использование Shell::QUIET для сообщения означает, что оно всегда будет отображаться. В то время как использование Shell::VERBOSE означает, что оно будет отображаться только при включённом подробном выводе.
Параметры
- строка|массив
$messageнеобязательно null - Строка или массив строк для вывода
- целое число
$newlinesнеобязательно 1 - Количество символов новой строки для добавления
- целое число
$levelнеобязательноShell::NORMAL - Уровень вывода сообщения, см. выше.
Возвращает
integer|booleanВозвращает количество байт, возвращённых при записи в стандартный вывод.
Ссылка
http://book.cakephp.org/2.0/ru/console-and-shells.html#Shell::outoverwritesource public
overwrite( array|string $message , integer $newlines 1 , integer $size null )
Перезаписать уже выведенный текст.
Полезно для построения полосок прогресса или когда вы хотите заменить текст, уже выведенный на экран, новым текстом.
Предупреждение Вы не можете перезаписать текст, содержащий символы новой строки.
Параметры
- массив|строка
$message - Сообщение для вывода.
- целое число
$newlinesнеобязательно 1 - Количество символов новой строки для добавления.
- целое число
$sizeнеобязательно null - Количество байт для перезаписи. По умолчанию равно длине последнего выведенного сообщения.
Возвращает
integer|booleanВозвращает количество байт, возвращённых при записи в стандартный вывод.
paramsource public
param( string $name )
Безопасно получить значения из $this->params.
Параметры
- строка
$name - Имя параметра для получения.
Возвращает
string|boolean|nullЗначение. Возвратит null, если параметр не существует.
runCommandsource public
runCommand( string $command , array $argv )
Запускает командный интерпретатор с предоставленным argv.
Делегирует вызовы задачам и разрешает методы внутри класса. Команды ищутся в следующем порядке:
- Метод в командном интерпретаторе.
- Соответствующее имя задачи.
-
main()метод.
Если командный интерпретатор реализует main() метод, все отсутствующие вызовы методов будут отправлены в main() с оригинальным именем метода в argv.
Параметры
- строка
$command - Имя команды для запуска в этом командном интерпретаторе. Если этот аргумент пустой, и у командного интерпретатора есть
main()метод, он будет вызван вместо этого. - массив
$argv - Массив аргументов для запуска командного интерпретатора. Этот массив должен быть без имени командного интерпретатора.
Ссылка
http://book.cakephp.org/2.0/ru/console-and-shells.html#Shell::runCommandshortPathsource public
shortPath( string $file )
Делает абсолютный путь к файлу более читаемым
Параметры
- строка
$file - Абсолютный путь к файлу
Возвращает
stringкороткое имя пути
Ссылка
http://book.cakephp.org/2.0/ru/console-and-shells.html#Shell::shortPathstartupsource public
startup( )
Запускает командный интерпретатор и отображает приветственное сообщение. Позволяет проверять и настраивать параметры до выполнения команды или основной части выполнения.
Переопределите этот метод, если вы хотите убрать приветственную информацию или как-то иначе изменить предварительный порядок выполнения команды.
Ссылка
http://book.cakephp.org/2.0/ru/console-and-shells.html#Shell::startupwrapTextsource public
wrapText( string $text , string|integer|array $options array() )
Обёртка блока текста. Позволяет задать ширину и отступ для блока текста.
Параметры
-
widthШирина обрезки. По умолчанию 72 -
wordWrapОбрезать только по границам слов (пробелы). По умолчанию true. -
wordWrapОтступ текста заданной строкой. По умолчанию null.
Параметры
- строка
$text - Текст для форматирования.
- строка|целое число|массив
$optionsнеобязательно array() - Массив параметров или целое число для обрезки текста.
Возвращает
stringОформленный/отступленный текст
См.
CakeText::wrap()Ссылка
http://book.cakephp.org/2.0/ru/console-and-shells.html#Shell::wrapTextМетоды, унаследованные от Object
_mergeVarssource protected
_mergeVars( array $properties , string $class , boolean $normalize true )
Объединяет свойства $property этого объекта со свойствами в определении $class. Значение свойства этого класса будет объединено поверх $class'.
Это предоставляет часть DRY-магии CakePHP. Если вы хотите отключить её, переопределите этот метод как пустую функцию.
Параметры
- массив
$properties - Имена свойств для объединения.
- строка
$class - Класс для объединения свойств с.
- boolean
$normalizeнеобязательно true - Установите в значение true, чтобы выполнить свойства через Hash::normalize() перед объединением.
_setsource protected
_set( array $properties array() )
Позволяет устанавливать несколько свойств объекта в одной строке кода. Будут установлены только те свойства, которые являются частью объявления класса.
Параметры
- массив
$propertiesнеобязательно array() - Ассоциативный массив, содержащий свойства и соответствующие значения.
_stopsource protected
_stop( integer|string $status 0 )
Останавливает выполнение текущего скрипта. Оборачивает exit(), что облегчает тестирование.
Параметры
- целое число|строка
$statusнеобязательно 0 - см. http://php.net/exit для значений
dispatchMethodsource public
dispatchMethod( string $method , array $params array() )
Вызывает метод этого объекта с заданными параметрами. Обеспечивает объектно-ориентированную оболочку для call_user_func_array
Параметры
- строка
$method - Имя вызываемого метода
- массив
$paramsнеобязательный array() - Список параметров для использования при вызове $method
Возвращаемое значение
mixedРезультат вызова метода
logsource public
log( string $msg , integer $type LOG_ERR , null|string|array $scope null )
Удобный метод для записи сообщения в CakeLog. Для получения дополнительной информации о записи в журналы, см. CakeLog::write().
Параметры
- строка
$msg - Сообщение журнала
- целое число
$typeнеобязательный LOG_ERR - Константа типа ошибки. Определена в app/Config/core.php.
- null|string|array
$scopeнеобязательный null - Область(и), в которой создается сообщение журнала. Для получения дополнительной информации о пространствах имен журналов, см. CakeLog::config().
Возвращаемое значение
booleanУспешность записи в журнал
requestActionsource public
requestAction( string|array $url , array $extra array() )
Вызывает метод контроллера из любого места. Может использоваться для связи контроллеров или интеграции плагинов в основное приложение. requestAction может возвращать отрисованные представления или извлекать возвращаемое значение из действий контроллера.
Внутри этого метода используется Router::reverse() для преобразования параметра $url в строковый URL. Следует использовать форматы URL, совместимые с Router::reverse().
Передача данных POST и GET
Данные POST и GET могут быть смоделированы в requestAction. Для данных GET используйте $extra['url']. Параметр $extra['data'] позволяет моделировать данные POST.
Параметры
- строка|массив
$url - Строковый или массивно-базированный URL. В отличие от других массивов URL в CakePHP, этот URL не будет автоматически обрабатывать переданные и именованные аргументы в параметре $url.
- массив
$extraнеобязательный array() - Если массив содержит ключ "return", он устанавливает AutoRender в true. Также может использоваться для отправки данных GET/POST и именованных/переданных аргументов.
Возвращаемое значение
mixedЛогическое значение true или false при успехе/неудачи, или содержимое отрисованного действия, если в $extra установлен ключ 'return'.
toStringsource public
toString( )
Преобразование объекта в строку. Каждый класс может переопределять этот метод по мере необходимости.
Возвращаемое значение
stringИмя этого класса
Константы, унаследованные от Shell
CODE_ERROR, NORMAL, QUIET, VERBOSE |
Свойства, унаследованные от Shell
$OptionParsersource
public ConsoleOptionParser
Экземпляр ConsoleOptionParser, настроенный для данного класса.
$_lastWrittensource
protected целое число
Количество байтов, последне записанных в поток вывода, используемое при перезаписи предыдущего сообщения.
$interactivesource
public логическое значение
Если true, скрипт запросит разрешение на выполнение действий.
true $modelClasssource
public строка
Основное имя класса модели этого командного интерпретатора, первая модель в свойстве $uses.
null $pluginsource
public строка
Имя плагина, к которому относится командный интерпретатор. Автоматически устанавливается ShellDispatcher при создании командного интерпретатора.
null $taskssource
public массив
Содержит задачи для загрузки и инициализации.
Ссылка
http://book.cakephp.org/2.0/en/console-and-shells.html#Shell::$tasksarray() $usessource
public массив
Содержит модели для загрузки и инициализации.
Ссылка
http://book.cakephp.org/2.0/en/console-and-shells.html#Shell::$usesarray()
© 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.7/class-CommandTask.html