Класс 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Создаёт экземпляр оболочки.
- __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
Перенаправляет команду в другую оболочку. Аналогично 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
Выводит одно или несколько сообщений в стандартный вывод. Если параметры не переданы, выводит только новую строку.
- param() publicБезопасно получить значения в $this->params.
- parseDispatchArguments() publicПарсит аргументы для метода dispatchShell().
- quiet() publicВывод на всех уровнях.
- runCommand() publicЗапускает оболочку с предоставленным 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 )
Создаёт экземпляр оболочки.
Параметры
-
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( )
Возвращает массив, который можно использовать для описания внутреннего состояния этого объекта.
Возвращаемое значение
array__get()source public
__get( string $name )
Перегрузка get для ленивой сборки задач
Параметры
- строка
$name - Задача для получения.
Возвращаемое значение
Cake\Console\ShellОбъект задачи
_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( )
Проверяет, что задачи в карте задач действительно доступны
Исключения
RuntimeExceptionabort()source public
abort( string $message , integer $exitCode = self::CODE_ERROR )
Отображает отформатированное сообщение об ошибке и завершает работу приложения с кодом состояния 1.
Параметры
- строка
$message - Сообщение об ошибке.
- целое число
$exitCodeoptional 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'] ]);
Возвращает
целое числоКод выхода команды 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
$messageoptional null - Строка или массив строк для вывода.
- целое число
$newlinesoptional 1 - Количество добавляемых новых строк.
Возвращает
целое число|логическое значениеКоличество байт, возвращенных из записи в 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
$messageoptional null - Дополнительное сообщение об ошибке.
- целое число
$exitCodeoptional 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 = [] )
Отобразить вспомогательный объект Console.
Создать и отобразить вывод для объекта помощника. Если объект помощника ещё не загружен, он будет загружен и создан.
Параметры
- строка
$name - Имя помощника для отображения.
- массив
$settingsoptional [] - Данные конфигурации для помощника.
Возвращает
Cake\Console\HelperСозданный экземпляр помощника.
hr()source public
hr( integer $newlines = 0 , integer $width = 63 )
Выводит серию символов минус в стандартный вывод, используется как визуальный разделитель.
Параметры
- целое число
$newlinesoptional 0 - Количество новых строк для добавления до и после.
- целое число
$widthoptional 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
$optionsoptional null - Массив или строка опций.
- строка|null
$defaultoptional 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( )
Инициализирует оболочку, действует как конструктор для подклассов, позволяет настроить задачи до выполнения оболочки.
Ссылка
https://book.cakephp.org/3.0/ru/console-and-shells.html#Cake\Console\ConsoleOptionParser::initializeio()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
Возвращает
логическое значение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 означает, что оно будет отображаться только при включенном режиме 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 = [] )
Выполняет оболочку с предоставленным 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::shortPathstartup()source public
startup( )
Запускает оболочку и отображает приветственное сообщение. Разрешает проверку и настройку до выполнения команды или основного выполнения.
Переопределите этот метод, если хотите убрать приветственную информацию или каким-либо образом изменить предварительный поток команды.
Ссылка
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(), который оборачивает сообщение тегом
Параметры
- string|array|null
$messageнеобязательно null - Строка или массив строк для вывода
- integer
$newlinesнеобязательно 1 - Количество символов новой строки для добавления
- integer
$levelнеобязательно Shell::NORMAL - Уровень вывода сообщения, см. выше.
Возвращает
integer|booleanКоличество байтов, возвращённых при записи в стандартный вывод.
См. также
https://book.cakephp.org/3.0/ru/console-and-shells.html#Shell::outverbose()source public
verbose( string|array $message , integer $newlines = 1 )
Вывод на уровне verbose.
Параметры
- string|array
$message - Строка или массив строк для вывода
- integer
$newlinesнеобязательно 1 - Количество символов новой строки для добавления
Возвращает
integer|booleanКоличество байтов, возвращённых при записи в стандартный вывод.
warn()source public
warn( string|array|null $message = null , integer $newlines = 1 )
Удобный метод для err(), который оборачивает сообщение тегом
Параметры
- string|array|null
$messageнеобязательно null - Строка или массив строк для вывода
- integer
$newlinesнеобязательно 1 - Количество символов новой строки для добавления
Возвращает
integer|booleanКоличество байтов, возвращённых при записи в стандартный поток ошибок.
См. также
https://book.cakephp.org/3.0/ru/console-and-shells.html#Shell::errwrapMessageWithType()source protected deprecated
wrapMessageWithType( string $messageType , string|array $message )
Оборачивает сообщение с заданным типом сообщения, например
Устарело
3.6.0 Будет удалено в 4.0.0, так как больше не используется.Параметры
- string
$messageType - Тип сообщения, например "предупреждение".
- string|array
$message - Сообщение для обертывания.
Возвращает
array|stringСообщение, обернутое заданным типом сообщения.
wrapText()source public
wrapText( string $text , integer|array $options = [] )
Оборачивает блок текста. Позволяет задать ширину и отступы в блоке текста.
Параметры
-
widthШирина для обрезки. По умолчанию 72 -
wordWrapОбрезка только на границах слов (пробелы). По умолчанию true. -
indentОтступ текста с заданной строкой. По умолчанию null.
Параметры
- string
$text - Текст для форматирования.
- integer|array
$optionsнеобязательно [] - Массив параметров для использования, или целое число для обрезки текста.
Возвращает
stringОбрезанный/отступленный текст
См. также
\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 )
Устанавливает локатор таблиц. Если параметры не переданы, возвращает текущий используемый локатор.
Устарело
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 - Сообщение для записи в журнал.
- integer|string
$levelнеобязательно LogLevel::ERROR - Уровень ошибки.
- string|array
$contextнеобязательно [] - Дополнительные данные журнала, относящиеся к этому сообщению.
Возвращает
booleanРезультат записи в журнал.
Методы, используемые из Cake\Utility\MergeVariablesTrait
_mergeProperty()source protected
_mergeProperty( string $property , array $parentClasses , array $options )
Слияние одного свойства со значениями, объявленными во всех родительских классах.
Параметры
- string
$property - Имя сливаемого свойства.
- array
$parentClasses - Массив классов, которые нужно объединить.
- array
$options - Параметры для слияния свойства, см. _mergeVars()
_mergePropertyData()source protected
_mergePropertyData( array $current , array $parent , boolean $isAssoc )
Объединение каждого из ключей в свойстве.
Параметры
- array
$current - Текущее объединённое значение.
- array
$parent - Значение родительского класса.
- boolean
$isAssoc - Указывает, следует ли выполнять объединение в ассоциативном режиме.
Возвращает
mixedОбновлённое значение.
_mergeVars()source protected
_mergeVars( array $properties , array $options = [] )
Объединение списка $properties со всеми родительскими классами текущего класса.
Параметры:
-
associative- Список свойств, которые должны обрабатываться как ассоциативные массивы. Свойства в этом списке будут переданы через Hash::normalize() перед слиянием.
Параметры
- array
$properties - Массив свойств и стратегии их слияния.
- array
$optionsнеобязательно [] - Параметры для использования при слиянии свойств.
Методы, используемые из Cake\Datasource\ModelAwareTrait
_setModelClass()source protected
_setModelClass( string $name )
Устанавливает свойства modelClass и modelKey на основе соглашений.
Если свойства уже установлены, они не будут перезаписаны
Параметры
- string
$name - Имя класса.
getModelType()source public
getModelType( )
Получение типа модели, который будет использоваться этим классом
Возвращает
stringloadModel()source public
loadModel( string|null $modelClass = null , string|null $modelType = null )
Загружает и создаёт объекты репозитория, необходимые для этого объекта
Обычно используется для загрузки объектов таблицы ORM по мере необходимости. Также может использоваться для загрузки других типов объектов репозитория, используемых вашим приложением.
Если поставщик репозитория не возвращает объект, будет выброшено исключение MissingModelException.
Параметры
- string|null
$modelClassнеобязательно null Имя класса модели для загрузки. По умолчанию, $this->modelClass. Имя может быть псевдонимом, например
'Post'или FQCN, напримерApp\Model\Table\PostsTable::class.- 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/en/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.8/class-Cake.Console.Shell.html