Класс Shell
Базовый класс для утилит командной строки для автоматизации задач программистов.
Эквивалент Cake\Controller\Controller в командной строке.
- Cake\Console\Shell использует Cake\ORM\Locator\LocatorAwareTrait , Cake\Log\LogTrait , Cake\Utility\MergeVariablesTrait , Cake\Datasource\ModelAwareTrait
Прямые подклассы
- Cake\Shell\CacheShell
- Cake\Shell\CommandListShell
- Cake\Shell\Task\ExtractTask
- Cake\Shell\Task\LoadTask
- Cake\Shell\Task\UnloadTask
- Cake\Shell\CompletionShell
- Cake\Shell\I18nShell
- Cake\Shell\PluginShell
- Cake\Shell\RoutesShell
- Cake\Shell\SchemaCacheShell
- Cake\Shell\ServerShell
- Cake\Shell\Task\AssetsTask
- Cake\Shell\Task\CommandTask
Косвенные подклассы
Резюме констант
-
integerCODE_ERROR1 -
integerCODE_SUCCESS0 -
integerNORMALConsoleIo::NORMAL -
integerQUIETConsoleIo::QUIET -
integerVERBOSEConsoleIo::VERBOSE
Резюме свойств
- Экземпляр ConsoleOptionParser, настроенный для данного класса.
$OptionParserpublic - Коллекция задач для команды, используется для создания задач.
$Taskspublic - Экземпляр ConsoleIo.
$_ioprotected -
$_taskMapprotectedНормализованное отображение задач.array -
$argspublicСодержит аргументы, обработанные из командной строки.array -
$commandpublicКоманда (метод/задача), которая выполняется.string -
$interactivepublicЕсли true, скрипт запросит разрешение на выполнение действий.boolean -
$namepublicИмя оболочки в camelized формате.string -
$paramspublicСодержит флаги команд, обработанные из командной строки.array -
$pluginpublicstringИмя плагина, к которому принадлежит оболочка. Автоматически устанавливается ShellDispatcher при создании оболочки.
-
$rootNameprotectedОсновное имя команды, используемое при генерации вывода справки.string -
$taskNamespublicСодержит загруженные задачиarray -
$taskspublicСодержит задачи для загрузки и инициализацииarray|boolean
Унаследованные свойства
Резюме методов
- __construct() publicСоздаёт экземпляр Shell.
- __debugInfo() public
Возвращает массив, который можно использовать для описания внутреннего состояния этого объекта.
- __get() publicПерегрузка get для ленивой загрузки задач
- _displayHelp() protectedОтображает справку в правильном формате
- _setOutputLevel() protectedУстанавливает уровень вывода на основе параметров.
- _stop() protected
Останавливает выполнение текущего скрипта. Вызывает исключение StopException для попытки остановки выполнения.
- _validateTasks() protectedПроверяет, что задачи в карте задач фактически доступны
- _welcome() protectedОтображает заголовок для оболочки
- abort() public
Отображает отформатированное сообщение об ошибке и завершает приложение со статусом 1
- clear() publicОчистить консоль
- createFile() publicСоздаёт файл по заданному пути
- dispatchShell() public
Перенаправление команды на другую Shell. Аналогично Object::requestAction(), но предназначено для запуска оболочек из других оболочек.
- err() public
Выводит одно или несколько сообщений об ошибках в stderr. Если параметры не переданы, выводит только перевод строки.
-
Отображает отформатированное сообщение об ошибке и завершает приложение со статусом 1
- getIo() publicПолучить объект io для этой оболочки.
- getOptionParser() publicПолучить и настроить экземпляр анализатора опций.
- hasMethod() publicПроверить, есть ли у этой оболочки вызываемый метод с заданным именем.
- hasTask() publicПроверить, есть ли у этой оболочки задача с заданным именем.
- helper() publicОтобразить помощника консоли
- hr() publicВыводит серию символов минус в стандартный вывод, используется в качестве визуального разделителя.
- in() publicЗапрашивает у пользователя ввод и возвращает его.
- info() publicУдобный метод для out(), который оборачивает сообщение между тегами
- initialize() public
Инициализирует оболочку, действует как конструктор для подклассов, позволяет настраивать задачи перед выполнением оболочки.
- Получить/установить объект io для этой оболочки.
- loadTasks() publicЗагружает задачи, определённые в public $tasks
- nl() publicВозвращает последовательность одной или нескольких переводов строки.
- out() public
Выводит одно или несколько сообщений в stdout. Если параметры не переданы, выводит только перевод строки.
- param() publicБезопасно получить значения в $this->params.
- parseDispatchArguments() publicРазбирает аргументы для метода dispatchShell().
- quiet() publicВывод на всех уровнях.
- runCommand() publicВыполняет Shell с предоставленным argv.
- setIo() publicУстановить объект io для этой оболочки.
- setRootName() publicУстановить имя корневой команды для вывода справки.
- shortPath() publicДелает абсолютный путь к файлу более читабельным
- startup() public
Запускает оболочку и отображает приветственное сообщение. Позволяет проверять и настраивать перед выполнением команды или основным выполнением.
- success() publicУдобный метод для out(), который оборачивает сообщение между тегами
- verbose() publicВывод на уровне подробностей.
- warn() publicУдобный метод для err(), который оборачивает сообщение между тегами
- Оборачивает сообщение с заданным типом сообщения, например:
- wrapText() public
Оборачивает блок текста. Позволяет задать ширину и отступ для блока текста.
Подробное описание методов
__construct()source public
__construct( Cake\Console\ConsoleIo $io = null , Cake\ORM\Locator\LocatorInterface $locator = null )
Создаёт этот экземпляр Shell.
Параметры
-
Cake\Console\ConsoleIo$iooptional null - Экземпляр io.
-
Cake\ORM\Locator\LocatorInterface$locatoroptional null - Экземпляр локатора таблиц.
Ссылка
https://book.cakephp.org/3.0/en/console-and-shells.html#Shell__debugInfo()source public
__debugInfo( )
Возвращает массив, который можно использовать для описания внутреннего состояния этого объекта.
Возвращает
array__get()source public
__get( string $name )
Перегрузка get для ленивой загрузки задач
Параметры
- string
$name - Задача для получения.
Возвращает
Cake\Console\ShellОбъект задачи
_displayHelp()source protected
_displayHelp( string $command )
Отображает справку в правильном формате
Параметры
- string
$command - Команда, для которой требуется справка.
Возвращает
integer|booleanКоличество байтов, возвращённых при записи в stdout.
_setOutputLevel()source protected
_setOutputLevel( )
Устанавливает уровень вывода на основе параметров.
Это переконфигурирует уровень вывода для out() и настроенный логирование stdout/stderr
_stop()source protected
_stop( integer|string $status = self::CODE_SUCCESS )
Останавливает выполнение текущего скрипта. Вызывает исключение StopException для попытки остановки выполнения.
Параметры
- integer|string
$statusoptional 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( )
Перенаправить команду в другую оболочку. Аналогично 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-shellerr()source public
err( string|array|null $message = null , integer $newlines = 1 )
Выводит одно или несколько сообщений об ошибках в stderr. Если параметры не переданы, выводится только новая строка.
Параметры
- строка|массив|null
$messageнеобязательный null - Строка или массив строк для вывода
- целое число
$newlinesнеобязательный 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необязательный null - Необязательное сообщение об ошибке
- целое число
$exitCodeнеобязательный self::CODE_ERROR - Код завершения задачи оболочки.
Возвращает
целое числоКод ошибки
Исключения
Cake\Console\Exception\StopExceptionСсылка
https://book.cakephp.org/3.0/ru/console-and-shells.html#styling-outputgetIo()source public
getIo( )
Получить объект io для этой оболочки.
Возвращает
Cake\Console\ConsoleIoТекущий объект ConsoleIo.
getOptionParser()source public
getOptionParser( )
Получает экземпляр парсера опций и настраивает его.
Переопределяя этот метод, вы можете настроить ConsoleOptionParser перед его возвращением.
Возвращает
Cake\Console\ConsoleOptionParserСсылка
https://book.cakephp.org/3.0/ru/console-and-shells.html#configuring-options-and-generating-helphasMethod()source public
hasMethod( string $name )
Проверить, имеет ли эта оболочка вызываемый метод с данным именем.
Параметры
- строка
$name - Имя метода для проверки.
Возвращает
booleanСсылка
https://book.cakephp.org/3.0/ru/console-and-shells.html#shell-taskshasTask()source public
hasTask( string $task )
Проверить, имеет ли эта оболочка задачу с указанным именем.
Параметры
- строка
$task - Имя задачи для проверки.
Возвращает
booleanУспех
Ссылка
https://book.cakephp.org/3.0/ru/console-and-shells.html#shell-taskshelper()source public
helper( string $name , array $settings = [] )
Отобразить помощник консоли.
Создать и отобразить вывод для объекта помощника. Если объект помощника ещё не загружен, он будет загружен и создан.
Параметры
- строка
$name - Имя помощника для отображения.
- массив
$settingsнеобязательный [] - Данные конфигурации для помощника.
Возвращает
Cake\Console\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 - Значение ввода по умолчанию.
Возвращает
смешанныйЛибо значение по умолчанию, либо введённое пользователем.
Ссылка
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 = Shell::NORMAL )
Удобный метод для out(), который оборачивает сообщение тегом
Параметры
- строка|массив|null
$messageнеобязательно null - Строка или массив строк для вывода
- целое число
$newlinesнеобязательно 1 - Количество символов новой строки для добавления
- целое число
$levelнеобязательно Shell::NORMAL - Уровень вывода сообщения, см. выше.
Возвращаемое значение
целое число|логическое значениеКоличество байтов, возвращенных при записи в стандартный вывод.
См. также
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.
Устарело
3.5.0 Используйте getIo()/setIo() вместо этого.Параметры
-
Cake\Console\ConsoleIo$ioнеобязательно null - Объект ConsoleIo для использования.
Возвращаемое значение
Cake\Console\ConsoleIoТекущий объект ConsoleIo.
loadTasks()source public
loadTasks( )
Загружает задачи, определенные в public $tasks
Возвращаемое значение
логическое значениеnl()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 = Shell::NORMAL )
Выводит одно или несколько сообщений в стандартный вывод. Если параметры не переданы, выводится только символ новой строки.
Уровни вывода
Существует 3 встроенных уровня вывода. Shell::QUIET, Shell::NORMAL, Shell::VERBOSE. Уровни вывода verbose и quiet соответствуют переключателям вывода verbose и quiet , присутствующим в большинстве оболочек. Использование Shell::QUIET для сообщения означает, что оно всегда будет отображаться. В то время как использование Shell::VERBOSE означает, что оно будет отображаться только при включенном подробном выводе.
Параметры
- строка|массив|null
$messageнеобязательно null - Строка или массив строк для вывода
- целое число
$newlinesнеобязательно 1 - Количество символов новой строки для добавления
- целое число
$levelнеобязательно 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 = [] )
Выполняет Shell с предоставленным argv.
Делегирует вызовы задачам и разрешает методы внутри класса. Команды ищутся в следующем порядке:
- Метод в shell.
- Соответствующее имя задачи.
-
main()метод.
Если shell реализует main() метод, все отсутствующие вызовы методов будут отправлены в main() с оригинальным именем метода в argv.
Для вызова задач они должны быть представлены в виде подкоманд. Если вы определяете подкоманды, вы должны определить все необходимые подкоманды вашего shell, независимо от того, являются ли они методами этого класса или методами задач.
Параметры
- массив
$argv - Массив аргументов для запуска shell. В этом массиве должно отсутствовать имя shell.
- логическое значение
$autoMethodнеобязательно false Установите в true, чтобы позволить вызывать любой публичный метод, даже если он не был определен как подкоманда. Это используется ShellDispatcher для упрощения создания простых shell.
- массив
$extraнеобязательно [] Дополнительные параметры, которые вы можете вручную передать в Shell для обработки. Встроенный дополнительный параметр: -
requested: если используется, предотвратит отображение приветственного сообщения Shell
Возвращаемое значение
целое число|логическое значение|nullСсылка
https://book.cakephp.org/3.0/ru/console-and-shells.html#the-cakephp-consolesetIo()source public
setIo( Cake\Console\ConsoleIo $io )
Устанавливает объект io для этого shell.
Параметры
-
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::shortPathstartup()source public
startup( )
Запускает Shell и отображает приветственное сообщение. Позволяет проверять и настраивать перед выполнением команды или основного выполнения
Переопределите этот метод, если хотите удалить приветственную информацию или иначе изменить поток перед выполнением команды.
Ссылка
https://book.cakephp.org/3.0/ru/console-and-shells.html#Cake\Console\ConsoleOptionParser::startupsuccess()source public
success( string|array|null $message = null , integer $newlines = 1 , integer $level = Shell::NORMAL )
Удобный метод для out(), который оборачивает сообщение тегом
Параметры
- строка|массив|null
$messageнеобязательно null - Строка или массив строк для вывода
- целое число
$newlinesнеобязательно 1 - Количество добавляемых символов новой строки
- целое число
$levelнеобязательно Shell::NORMAL - Уровень вывода сообщения, см. выше.
Возвращает
целое число|булевоКоличество байтов, возвращённых при записи в стандартный вывод.
См. также
https://book.cakephp.org/3.0/ru/console-and-shells.html#Shell::outverbose()source public
verbose( string|array $message , integer $newlines = 1 )
Вывод на уровне подробности.
Параметры
- строка|массив
$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 устаревший
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\LocatorInterfacesetTableLocator()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().
Параметры
- mixed
$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.
Параметры
- string|null
$modelClassнеобязательно null - Имя класса модели для загрузки. По умолчанию $this->modelClass
- string|null
$modelTypeнеобязательно null - Тип репозитория для загрузки. По умолчанию значение modelType().
Возвращает
Cake\Datasource\RepositoryInterfaceСозданный экземпляр модели.
Выбрасывает
Cake\Datasource\Exception\MissingModelExceptionЕсли класс модели не найден.
InvalidArgumentException
При использовании типа, который не был зарегистрирован.
UnexpectedValueException
Если тип модели не определён
modelFactory()source public
modelFactory( string $type , callable $factory )
Переопределить существующую вызываемую функцию для создания репозиториев заданного типа.
Параметры
- string
$type - Имя типа репозитория, для которого предназначена функция-фабрика.
- callable
$factory - Функция-фабрика, используемая для создания экземпляров.
modelType()source public deprecated
modelType( string|null $modelType = null )
Установить или получить тип модели, который будет использоваться этим классом
Устаревшее
3.5.0 Используйте getModelType()/setModelType() вместо этого.Параметры
- string|null
$modelTypeнеобязательно null - Тип модели или null для получения текущего
Возвращает
string|Cake\Datasource\ModelAwareTrait$this
setModelType()source public
setModelType( string $modelType )
Устанавливает тип модели, который будет использоваться этим классом
Параметры
- string
$modelType - Тип модели
Возвращает
$this
Краткое описание магических методов
Подробное описание свойств
$OptionParsersource
public Cake\Console\ConsoleOptionParser
Экземпляр ConsoleOptionParser, настроенный для этого класса.
$Taskssource
public Cake\Console\TaskRegistry
Коллекция задач для команды, используемая для создания задач.
$interactivesource
public boolean
Если true, скрипт запросит разрешение на выполнение действий.
true
$pluginsource
public string
Имя плагина, к которому принадлежит оболочка. Автоматически устанавливается ShellDispatcher при создании оболочки.
$rootNamesource
protected string
Корневое имя команды, используемое при генерации вывода справки.
'cake'
$taskssource
public array|boolean
Содержит задачи для загрузки и создания экземпляров
Ссылка
https://book.cakephp.org/3.0/ru/console-and-shells.html#Shell::$tasks[]
© 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.7/class-Cake.Console.Shell.html