Класс LoadTask
Задача для загрузки плагинов.
- Cake\Console\Shell использует Cake\ORM\Locator\LocatorAwareTrait, Cake\Log\LogTrait, Cake\Utility\MergeVariablesTrait, Cake\Datasource\ModelAwareTrait
-
Cake\Shell\Task\LoadTask
Подробное описание методов
_modifyBootstrapsource protected
_modifyBootstrap( string $plugin , boolean $hasBootstrap , boolean $hasRoutes , boolean $hasAutoloader )
Обновить файл приложения bootstrap.php.
Параметры
- строка
$plugin - Имя плагина.
- логическое значение
$hasBootstrap - Загружать ли bootstrap.
- логическое значение
$hasRoutes - Загружать ли маршруты.
- логическое значение
$hasAutoloader - Настроен ли автозагрузчик для плагина.
Возвращает
booleanЕсли модификация прошла успешно.
getOptionParsersource public
getOptionParser( )
Метод getOptionParser.
Возвращает
Cake\Console\ConsoleOptionParser\Cake\Console\ConsoleOptionParser
Переопределяет
Cake\Console\Shell::getOptionParser() mainsource public
main( string $plugin null )
Метод выполнения, всегда используемый для задач.
Параметры
- строка
$pluginнеобязательно null - Имя плагина.
Возвращает
booleanbool
Методы, унаследованные от Cake\Console\Shell
__constructsource public
__construct( Cake\Console\ConsoleIo $io null )
Создаёт экземпляр этого Shell.
Параметры
-
Cake\Console\ConsoleIo$ioнеобязательно null - Экземпляр io.
Ссылка
http://book.cakephp.org/3.0/ru/console-and-shells.html#Shell__debugInfosource public
__debugInfo( )
Возвращает массив, который можно использовать для описания внутреннего состояния этого объекта.
Возвращает
arrayмассив
__getsource public
__get( string $name )
Перегрузка get для ленивого создания задач
Параметры
- строка
$name - Задача, которую нужно получить.
Возвращает
Cake\Console\ShellОбъект задачи
_displayHelpsource protected
_displayHelp( string $command )
Выводит справку в правильном формате
Параметры
- строка
$command - Команда, для которой нужна справка.
Возвращает
integer|booleanint|bool
_setOutputLevelsource protected
_setOutputLevel( )
Устанавливает уровень вывода на основе параметров.
Это переконфигурирует уровень вывода для out() и настроенное протоколирование stdout/stderr.
_stopsource protected
_stop( integer|string $status 0 )
Останавливает выполнение текущего скрипта. Оборачивает exit(), что облегчает тестирование.
Параметры
- целое число/строка
$statusнеобязательно 0 - см. http://php.net/exit для значений
clearsource public
clear( )
Очистить консоль
Ссылка
http://book.cakephp.org/3.0/ru/console-and-shells.html#console-outputcreateFilesource public
createFile( string $path , string $contents )
Создаёт файл по указанному пути
Параметры
- строка
$path - Куда поместить файл.
- строка
$contents - Содержимое файла.
Возвращает
booleanУспех
Ссылка
http://book.cakephp.org/3.0/ru/console-and-shells.html#creating-filesdispatchShellsource 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'] ]);`
Возвращает
mixedРезультат выполнения другой оболочки.
Ссылка
http://book.cakephp.org/3.0/ru/console-and-shells.html#invoking-other-shells-from-your-shellerrsource public
err( string|array|null $message null , integer $newlines 1 )
Выводит одно или несколько сообщений об ошибке в stderr. Если параметры не переданы, выводится просто перевод строки.
Параметры
- строка/массив/null
$messageнеобязательно null - Строка или массив строк для вывода
- целое число
$newlinesнеобязательно 1 - Количество переводов строк для добавления
errorsource public
error( string $title , string|null $message null )
Отображает отформатированное сообщение об ошибке и завершает приложение с кодом состояния 1
Параметры
- строка
$title - Заголовок ошибки
- строка/null
$messageнеобязательно null - Необязательное сообщение об ошибке
Возвращает
integerКод ошибки
Ссылка
http://book.cakephp.org/3.0/ru/console-and-shells.html#styling-outputhasMethodsource public
hasMethod( string $name )
Проверка наличия вызываемого метода с заданным именем в этом шелле.
Параметры
- строка
$name - Имя метода для проверки.
Возвращает
booleanbool
Ссылка
http://book.cakephp.org/3.0/ru/console-and-shells.html#shell-taskshasTasksource public
hasTask( string $task )
Проверка наличия задачи с заданным именем в этом шелле.
Параметры
- строка
$task - Имя задачи для проверки.
Возвращает
booleanУспешно
Ссылка
http://book.cakephp.org/3.0/ru/console-and-shells.html#shell-taskshelpersource public
helper( string $name , array $settings [] )
Вывод помощника консоли
Создание и вывод вывода для объекта помощника. Если объект помощника еще не загружен, он будет загружен и создан.
Параметры
- строка
$name - Имя помощника для вывода
- массив
$settingsопционально [] - Данные конфигурации для помощника.
Возвращает
Cake\Console\HelperСозданный экземпляр помощника.
hrsource public
hr( integer $newlines 0 , integer $width 63 )
Выводит последовательность дефисов в стандартный вывод, служит визуальным разделителем.
Параметры
- целое число
$newlinesопционально 0 - Количество новых строк для добавления в начало и конец
- целое число
$widthопционально 63 - Ширина строки, по умолчанию 63
Ссылка
http://book.cakephp.org/3.0/ru/console-and-shells.html#Shell::hrinsource public
in( string $prompt , string|array|null $options null , string|null $default null )
Запрашивает у пользователя ввод и возвращает его.
Параметры
- строка
$prompt - Текст запроса.
- строка/массив/null
$optionsопционально null - Массив или строка опций.
- строка/null
$defaultопционально null - Значение ввода по умолчанию.
Возвращает
mixedЗначение по умолчанию или введенное пользователем.
Ссылка
http://book.cakephp.org/3.0/ru/console-and-shells.html#Shell::ininitializesource public
initialize( )
Инициализирует шелл, действует как конструктор для подклассов, позволяет настроить задачи до выполнения шелла
Ссылка
http://book.cakephp.org/3.0/ru/console-and-shells.html#Cake\Console\ConsoleOptionParser::initializeiosource public
io( Cake\Console\ConsoleIo $io null )
Получить/установить объект io для этого шелла.
Параметры
-
Cake\Console\ConsoleIo$ioопционально null - Объект ConsoleIo для использования.
Возвращает
Cake\Console\ConsoleIoТекущий объект ConsoleIo.
loadTaskssource public
loadTasks( )
Загружает задачи, определенные в public $tasks
Возвращает
booleanbool
nlsource public
nl( integer $multiplier 1 )
Возвращает одну или несколько последовательностей символов новой строки.
Параметры
- целое число
$multiplierопционально 1 - Количество повторений последовательности символов новой строки
Возвращает
stringстрока
Ссылка
http://book.cakephp.org/3.0/ru/console-and-shells.html#Shell::nloutsource public
out( string|array|null $message null , integer $newlines 1 , integer $level Cake\Shell\Task\Shell::NORMAL )
Выводит одно или несколько сообщений в стандартный вывод. Если параметры не переданы, выводится только новая строка.
Уровни вывода
Существует 3 встроенных уровня вывода. Shell::QUIET, Shell::NORMAL, Shell::VERBOSE. Уровни вывода verbose и quiet соответствуют переключателям вывода verbose и quiet в большинстве оболочек. Использование Shell::QUIET для сообщения означает, что оно всегда будет отображаться. В то время как использование Shell::VERBOSE означает, что оно будет отображаться только при включенном verbose выводе.
Параметры
- строка/массив/null
$messageопционально null - Строка или массив строк для вывода
- целое число
$newlinesопционально 1 - Количество новых строк для добавления
- целое число
$levelопционально Cake\Shell\Task\Shell::NORMAL - Уровень вывода сообщения, см. выше.
Возвращает
integer|booleanВозвращает количество байтов, возвращенных при записи в стандартный вывод.
Ссылка
http://book.cakephp.org/3.0/ru/console-and-shells.html#Shell::outparamsource public
param( string $name )
Безопасный доступ к значениям в $this->params.
Параметры
- строка
$name - Имя параметра для получения.
Возвращает
string|boolean|nullЗначение. Вернет null, если параметр не существует.
parseDispatchArgumentssource public
parseDispatchArguments( array $args )
Разбирает аргументы для метода dispatchShell().
Параметры
- массив
$args - Аргументы, полученные от метода dispatchShell() с помощью func_get_args()
Возвращает
arrayПервое значение должно быть массивом аргументов команды. Второе значение должно быть массивом дополнительных параметров для передачи диспетчеру
quietsource public
quiet( string|array $message , integer $newlines 1 )
Вывод на всех уровнях.
Параметры
- строка/массив
$message - Строка или массив строк для вывода
- целое число
$newlinesопционально 1 - Количество новых строк для добавления
Возвращает
integer|booleanВозвращает количество байтов, возвращенных при записи в стандартный вывод.
runCommandsource public
runCommand( array $argv , boolean $autoMethod false , array $extra [] )
Запускает Shell с предоставленным argv.
Делегирует вызовы задачам и разрешает методы внутри класса. Команды ищутся в следующем порядке:
- Метод в shell.
- Соответствующее имя задачи.
-
main()метод.
Если shell реализует метод main(), все отсутствующие вызовы методов будут отправлены в main() с оригинальным именем метода в argv.
Для вызова задач они обязательно должны быть представлены в качестве подкоманд. Если вы определяете подкоманды, вы должны определить все необходимые подкоманды вашего shell, будь то методы в этом классе или методы в задачах.
Параметры
- массив
$argv - Массив аргументов для запуска shell. В этом массиве должно отсутствовать имя shell.
- логическое значение
$autoMethodнеобязательно false - Установите в значение true, чтобы разрешить вызов любого публичного метода, даже если он не был определен как подкоманда. Это используется ShellDispatcher для упрощения создания простых shell.
- массив
$extraнеобязательно [] - Дополнительные параметры, которые вы можете вручную передать в Shell для обработки. Встроенный дополнительный параметр: -
requested: если используется, предотвращает отображение приветственного сообщения Shell.
Возвращает
mixedсмешанное значение
Ссылка
http://book.cakephp.org/3.0/ru/console-and-shells.html#the-cakephp-consoleshortPathsource public
shortPath( string $file )
Упрощает чтение абсолютного пути к файлу
Параметры
- строка
$file - Абсолютный путь к файлу
Возвращает
stringкороткое имя пути
Ссылка
http://book.cakephp.org/3.0/ru/console-and-shells.html#Shell::shortPathstartupsource public
startup( )
Инициализирует Shell и отображает приветственное сообщение. Позволяет проверять и настраивать параметры перед выполнением команды или основного кода
Переопределите этот метод, если хотите убрать приветственное сообщение или изменить порядок действий перед выполнением команды.
Ссылка
http://book.cakephp.org/3.0/ru/console-and-shells.html#Cake\Console\ConsoleOptionParser::startupverbosesource public
verbose( string|array $message , integer $newlines 1 )
Вывод на уровне подробности.
Параметры
- строка или массив
$message - Строка или массив строк для вывода
- целое число
$newlinesнеобязательно 1 - Количество добавляемых новых строк
Возвращает
integer|booleanВозвращает количество байтов, возвращённых при записи в стандартный вывод.
wrapTextsource public
wrapText( string $text , integer|array $options [] )
Обёртывание блока текста. Позволяет задать ширину и отступы блока текста.
Параметры
-
widthШирина обёртывания. По умолчанию 72 -
wordWrapОбёртывание только по границам слов (пробелам). По умолчанию true. -
indentОтступ текста с помощью предоставленной строки. По умолчанию null.
Параметры
- строка
$text - Текст для форматирования.
- целое число или массив
$optionsнеобязательно [] - Массив опций для использования или целое число для обёртывания текста.
Возвращает
stringОтформатированный/отступленный текст
См. также
Cake\Utility\Text::wrap()Ссылка
http://book.cakephp.org/3.0/ru/console-and-shells.html#Shell::wrapTextМетоды, используемые из Cake\ORM\Locator\LocatorAwareTrait
tableLocatorsource public
tableLocator( Cake\ORM\Locator\LocatorInterface $tableLocator null )
Устанавливает локатор таблиц. Если параметры не переданы, возвращает текущий используемый локатор.
Параметры
-
Cake\ORM\Locator\LocatorInterface$tableLocatorнеобязательно null - Экземпляр LocatorInterface.
Возвращает
Cake\ORM\Locator\LocatorInterface\Cake\ORM\Locator\LocatorInterface
Методы, используемые из Cake\Log\LogTrait
logsource public
log( mixed $msg , integer|string $level LogLevel::ERROR , string|array $context [] )
Удобный метод для записи сообщения в журнал. Дополнительную информацию о записи в журналы см. в Log::write().
Параметры
- смешанное значение
$msg - Сообщение журнала.
- целое число или строка
$levelнеобязательно LogLevel::ERROR - Уровень ошибки.
- строка или массив
$contextнеобязательно [] - Дополнительные данные журнала, относящиеся к этому сообщению.
Возвращает
booleanРезультат записи в журнал.
Методы, используемые из Cake\Utility\MergeVariablesTrait
_mergePropertysource protected
_mergeProperty( string $property , array $parentClasses , array $options )
Объединяет одно свойство со значениями, объявленными во всех родительских классах.
Параметры
- строка
$property - Имя объединяемого свойства.
- массив
$parentClasses - Массив классов, которые нужно объединить.
- массив
$options - Параметры для объединения свойства, см. _mergeVars()
_mergePropertyDatasource protected
_mergePropertyData( array $current , array $parent , boolean $isAssoc )
Объединяет каждый из ключей в свойстве.
Параметры
- массив
$current - Текущее объединённое значение.
- массив
$parent - Значение родительского класса.
- логическое значение
$isAssoc - Флаг, указывающий на ассоциативный режим объединения.
Возвращает
mixedОбновленное значение.
_mergeVarssource protected
_mergeVars( array $properties , array $options [] )
Объединяет список $properties со всеми родительскими классами текущего класса.
Параметры:
-
associative- Список свойств, которые должны обрабатываться как ассоциативные массивы. Свойства в этом списке будут переданы через Hash::normalize() перед объединением.
Параметры
- массив
$properties - Массив свойств и стратегии их объединения.
- массив
$optionsнеобязательно [] - Параметры для объединения свойств.
Методы, используемые из Cake\Datasource\ModelAwareTrait
_setModelClasssource protected
_setModelClass( string $name )
Устанавливает свойства modelClass и modelKey на основе соглашений.
Если свойства уже установлены, они не будут перезаписаны
Параметры
- строка
$name - Имя класса.
loadModelsource public
loadModel( string|null $modelClass null , string|null $modelType null )
Загружает и создает объекты репозитория, необходимые для этого объекта
Обычно используется для загрузки объектов ORM Table, если они необходимы. Также может использоваться для загрузки других типов репозиторных объектов, используемых в вашем приложении.
Если поставщик репозитория не возвращает объект, будет выброшено исключение MissingModelException.
Параметры
- строка или null
$modelClassнеобязательно null - Имя класса модели для загрузки. По умолчанию $this->modelClass
- строка или null
$modelTypeнеобязательно null - Тип репозитория для загрузки. По умолчанию значение modelType().
Возвращает
objectСозданный экземпляр модели.
Исключения
Cake\Datasource\Exception\MissingModelExceptionЕсли класс модели не найден.
InvalidArgumentExceptionПри использовании типа, который не был зарегистрирован.
UnexpectedValueExceptionЕсли тип модели не определен
modelFactorysource public
modelFactory( string $type , callable $factory )
Зарегистрировать вызываемый объект для генерации репозиториев заданного типа.
Параметры
- строка
$type - Имя типа репозитория, для которого предназначена функция-фабрика.
- вызываемый объект
$factory - Функция-фабрика, используемая для создания экземпляров.
modelTypesource public
modelType( string|null $modelType null )
Установить или получить тип модели, который будет использоваться этим классом
Параметры
- строка|null
$modelTypeнеобязательно null - Тип модели или null для получения текущего
Возвращает
string|$this$this
Постоянные значения, унаследованные от Cake\Console\Shell
CODE_ERROR, NORMAL, QUIET, VERBOSE |
Краткое описание свойств
Краткое описание свойств, унаследованных от Cake\Console\Shell
$OptionParsersource
public Cake\Console\ConsoleOptionParser
Экземпляр ConsoleOptionParser, настроенный для этого класса.
$Taskssource
public Cake\Console\TaskRegistry
Коллекция задач для команды, используемая для создания задач.
$paramssource
public массив
Содержит переключатели команд, проанализированные из командной строки.
[]
$pluginsource
public строка
Имя плагина, к которому относится оболочка. Автоматически устанавливается ShellDispatcher при создании оболочки.
null $taskssource
public массив
Содержит задачи для загрузки и инициализации
Ссылка
http://book.cakephp.org/3.0/ru/console-and-shells.html#Shell::$tasks[]
Свойства, используемые из Cake\ORM\Locator\LocatorAwareTrait
Свойства, используемые из Cake\Datasource\ModelAwareTrait
$modelClasssource
public строка
Основное имя класса модели этого объекта. Должен быть множественным числом. CakePHP не будет склонять имя.
Пример: Для объекта с именем "Комментарии", modelClass будет "Комментарии". Классы плагинов должны использовать имена в стиле Plugin.Comments для правильной загрузки моделей из соответствующего плагина.
© 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/3.1/class-Cake.Shell.Task.LoadTask.html