Класс ServerShell
Встроенный серверный Shell
- Cake\Console\Shell использует Cake\ORM\Locator\LocatorAwareTrait , Cake\Log\LogTrait , Cake\Utility\MergeVariablesTrait , Cake\Datasource\ModelAwareTrait
-
Cake\Shell\ServerShell
Краткое описание констант
-
string'localhost' -
integer8765
Унаследованные константы
Краткое описание свойств
-
$_documentRootprotectedкорневой каталог документаstring -
$_hostprotectedхост сервераstring -
$_portprotectedпорт прослушиванияstring
Унаследованные свойства
-
OptionParser,Tasks,_io,_taskMap,args,command,interactive,name,params,plugin,taskNames,tasks_tableLocator_modelFactories,_modelType,modelClass
Краткое описание методов
- _welcome() protectedОтображает заголовок для оболочки
- getOptionParser() publicПолучает экземпляр анализатора параметров и настраивает его.
- initialize() publicПереопределяет initialize оболочки
- main() publicПереопределяет main() для обработки действия
- startup() public
Запускает Shell и отображает приветственное сообщение. Позволяет проверять и настраивать перед выполнением команды или основного действия
Подробное описание методов
_welcome()source protected
_welcome( )
Отображает заголовок для оболочки
Переопределяет
Cake\Console\Shell::_welcome() getOptionParser()source public
getOptionParser( )
Получает экземпляр анализатора параметров и настраивает его.
Возвращает
Cake\Console\ConsoleOptionParserПереопределяет
Cake\Console\Shell::getOptionParser() initialize()source public
initialize( )
Переопределяет initialize оболочки
Переопределяет
Cake\Console\Shell::initialize() startup()source public
startup( )
Запускает Shell и отображает приветственное сообщение. Позволяет проверять и настраивать перед выполнением команды или основного действия
Переопределите этот метод, если хотите удалить приветственную информацию или иным образом изменить поток перед командой.
Ссылка
http://book.cakephp.org/3.0/en/console-and-shells.html#hook-methodsПереопределяет
Cake\Console\Shell::startup() Методы, унаследованные от Cake\Console\Shell
__construct()source public
__construct( Cake\Console\ConsoleIo $io null )
Конструирует этот экземпляр Shell.
Параметры
-
Cake\Console\ConsoleIo$iooptional null - Экземпляр io.
Ссылка
http://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 - см. http://php.net/exit для значений
Выбрасывает
Cake\Console\Exception\StopExceptionabort()source public
abort( string $message , integer $exitCode self::CODE_ERROR )
Отображает отформатированное сообщение об ошибке и завершает работу приложения с кодом состояния 1
Параметры
- string
$message - Сообщение об ошибке
- integer
$exitCodeoptional self::CODE_ERROR - Код выхода для задачи оболочки.
Выбрасывает
Cake\Console\Exception\StopExceptionСсылка
http://book.cakephp.org/3.0/en/console-and-shells.html#styling-outputclear()source public
clear( )
Очистить консоль
Ссылка
http://book.cakephp.org/3.0/en/console-and-shells.html#console-outputcreateFile()source public
createFile( string $path , string $contents )
Создает файл по заданному пути
Параметры
- string
$path - Куда поместить файл.
- string
$contents - Содержимое для размещения в файле.
Возвращает
booleanУспех
Ссылка
http://book.cakephp.org/3.0/en/console-and-shells.html#creating-filesdispatchShell()source public
dispatchShell( )
Отправка команды в другой Shell. Аналогично 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'] ]);
Возвращает
integerКод выхода команды cli. 0 означает успех.
Ссылка
http://book.cakephp.org/3.0/en/console-and-shells.html#invoking-other-shells-from-your-shellerr()source public
err( string|array|null $message null , integer $newlines 1 )
Выводит одно или несколько сообщений об ошибке в stderr. Если параметры не переданы, выводит только символ новой строки.
Параметры
- string|array|null
$messageoptional null - Строка или массив строк для вывода
- integer
$newlinesoptional 1 - Количество символов новой строки для добавления
Возвращает
integer|booleanКоличество байтов, возвращенных при записи в stderr.
error()source public
error( string $title , string|null $message null , integer $exitCode self::CODE_ERROR )
Отображает отформатированное сообщение об ошибке и завершает работу приложения с кодом состояния 1
Устарело
Начиная с версии 3.2.0. Используйте Shell::abort() вместо этого.Параметры
- string
$title - Заголовок ошибки
- string|null
$messageoptional null - Дополнительное сообщение об ошибке
- integer
$exitCodeoptional self::CODE_ERROR - Код выхода для задачи shell.
Возвращает
integerКод ошибки
Вызывает исключение
Cake\Console\Exception\StopExceptionСсылка
http://book.cakephp.org/3.0/en/console-and-shells.html#styling-outputhasMethod()source public
hasMethod( string $name )
Проверяет, есть ли у этого шелла вызываемый метод с заданным именем.
Параметры
- string
$name - Имя метода для проверки.
Возвращает
booleanСсылка
http://book.cakephp.org/3.0/en/console-and-shells.html#shell-taskshasTask()source public
hasTask( string $task )
Проверяет, есть ли у этого шелла задача с указанным именем.
Параметры
- string
$task - Имя задачи для проверки.
Возвращает
booleanУспех
Ссылка
http://book.cakephp.org/3.0/en/console-and-shells.html#shell-taskshelper()source public
helper( string $name , array $settings [] )
Рендеринг помощника консоли
Создает и отображает вывод для объекта помощника. Если объект помощника еще не загружен, он будет загружен и создан.
Параметры
- string
$name - Имя помощника для рендеринга
- array
$settingsoptional [] - Данные конфигурации для помощника.
Возвращает
Cake\Console\HelperСозданный экземпляр помощника.
hr()source public
hr( integer $newlines 0 , integer $width 63 )
Выводит серию символов минус в стандартный вывод, выступает в качестве визуального разделителя.
Параметры
- integer
$newlinesoptional 0 - Количество символов новой строки для добавления в начало и конец
- integer
$widthoptional 63 - Ширина линии, по умолчанию 63
Ссылка
http://book.cakephp.org/3.0/en/console-and-shells.html#Shell::hrin()source public
in( string $prompt , string|array|null $options null , string|null $default null )
Запрашивает у пользователя ввод и возвращает его.
Параметры
- string
$prompt - Текст запроса.
- string|array|null
$optionsoptional null - Массив или строка вариантов.
- string|null
$defaultoptional null - Значение ввода по умолчанию.
Возвращает
mixedЗначение по умолчанию или введенное пользователем значение.
Ссылка
http://book.cakephp.org/3.0/en/console-and-shells.html#Shell::ininfo()source public
info( string|array|null $message null , integer $newlines 1 , integer $level Cake\Shell\Shell::NORMAL )
Вспомогательный метод для out(), который заключает сообщение в теги
Параметры
- string|array|null
$messageoptional null - Строка или массив строк для вывода
- integer
$newlinesoptional 1 - Количество символов новой строки для добавления
- integer
$leveloptional Cake\Shell\Shell::NORMAL - Уровень вывода сообщения, см. выше.
Возвращает
integer|booleanКоличество байтов, возвращенных при записи в stdout.
См. также
http://book.cakephp.org/3.0/en/console-and-shells.html#Shell::outio()source public
io( Cake\Console\ConsoleIo $io null )
Получение/установка объекта io для этого шелла.
Параметры
-
Cake\Console\ConsoleIo$iooptional null - Объект ConsoleIo для использования.
Возвращает
Cake\Console\ConsoleIoТекущий объект ConsoleIo.
loadTasks()source public
loadTasks( )
Загружает задачи, определенные в public $tasks
Возвращает
booleannl()source public
nl( integer $multiplier 1 )
Возвращает одну или несколько последовательностей символов перевода строки.
Параметры
- integer
$multiplieroptional 1 - Количество повторений последовательности символов перевода строки
Возвращает
stringСсылка
http://book.cakephp.org/3.0/en/console-and-shells.html#Shell::nlout()source public
out( string|array|null $message null , integer $newlines 1 , integer $level Cake\Shell\Shell::NORMAL )
Выводит одно или несколько сообщений в stdout. Если параметры не переданы, выводит только символ новой строки.
Уровни вывода
Существует 3 встроенных уровня вывода. Shell::QUIET, Shell::NORMAL, Shell::VERBOSE. Уровни вывода verbose и quiet соответствуют параметрам командной строки verbose и quiet, присутствующим в большинстве шеллов. Использование Shell::QUIET для сообщения означает, что оно всегда будет отображаться. В то время как использование Shell::VERBOSE означает, что оно будет отображаться только тогда, когда включен подробный вывод.
Параметры
- string|array|null
$messageoptional null - Строка или массив строк для вывода
- integer
$newlinesoptional 1 - Количество символов новой строки для добавления
- integer
$leveloptional Cake\Shell\Shell::NORMAL - Уровень вывода сообщения, см. выше.
Возвращает
integer|booleanКоличество байтов, возвращенных при записи в stdout.
Ссылка
http://book.cakephp.org/3.0/en/console-and-shells.html#Shell::outparam()source public
param( string $name )
Безопасный доступ к значениям в $this->params.
Параметры
- string
$name - Имя параметра для получения.
Возвращаемое значение
string|boolean|nullЗначение. Вернет null, если параметр не существует.
parseDispatchArguments()source public
parseDispatchArguments( array $args )
Разбирает аргументы для метода dispatchShell().
Параметры
- array
$args Аргументы, полученные из метода dispatchShell() с помощью func_get_args()
Возвращаемое значение
arrayПервое значение должно быть массивом аргументов команды. Второе значение должно быть массивом дополнительных параметров для передачи диспетчеру
quiet()source public
quiet( string|array $message , integer $newlines 1 )
Вывод на всех уровнях.
Параметры
- string|array
$message - Строка или массив строк для вывода
- integer
$newlinesoptional 1 - Количество символов новой строки для добавления
Возвращаемое значение
integer|booleanКоличество байт, возвращенных при записи в stdout.
runCommand()source public
runCommand( array $argv , boolean $autoMethod false , array $extra [] )
Запускает Shell с предоставленными argv.
Делегирует вызовы задачам и разрешает методы внутри класса. Команды ищутся в следующем порядке:
- Метод в shell.
- Соответствующее имя задачи.
-
main()метод.
Если shell реализует метод main(), все отсутствующие вызовы методов будут отправлены в main() с исходным именем метода в argv.
Для вызова задач они должны быть представлены как подкоманды. Если вы определяете какие-либо подкоманды, вы должны определить все подкоманды, необходимые вашему shell, независимо от того, являются ли они методами этого класса или методами задач.
Параметры
- array
$argv - Массив аргументов для запуска shell. В этом массиве должно отсутствовать имя shell.
- boolean
$autoMethodoptional false Установите в true, чтобы разрешить вызов любого публичного метода, даже если он не был определен как подкоманда. Это используется ShellDispatcher для упрощения создания простых shell.
- array
$extraoptional [] Дополнительные параметры, которые можно вручную передать в Shell для отправки. Встроенный дополнительный параметр: -
requested: если используется, предотвратит отображение приветственного сообщения Shell
Возвращаемое значение
integer|boolean|nullСсылка
http://book.cakephp.org/3.0/en/console-and-shells.html#the-cakephp-consoleshortPath()source public
shortPath( string $file )
Делает абсолютный путь к файлу более читаемым
Параметры
- string
$file - Абсолютный путь к файлу
Возвращаемое значение
stringУкороченный путь
Ссылка
http://book.cakephp.org/3.0/en/console-and-shells.html#Shell::shortPathsuccess()source public
success( string|array|null $message null , integer $newlines 1 , integer $level Cake\Shell\Shell::NORMAL )
Удобный метод для out(), который оборачивает сообщение между тегом <success>
Параметры
- string|array|null
$messageoptional null - Строка или массив строк для вывода
- integer
$newlinesoptional 1 - Количество символов новой строки для добавления
- integer
$leveloptional Cake\Shell\Shell::NORMAL - Уровень вывода сообщения, см. выше.
Возвращаемое значение
integer|booleanКоличество байт, возвращенных при записи в stdout.
См. также
http://book.cakephp.org/3.0/en/console-and-shells.html#Shell::outverbose()source public
verbose( string|array $message , integer $newlines 1 )
Вывод на подробном уровне.
Параметры
- string|array
$message - Строка или массив строк для вывода
- integer
$newlinesoptional 1 - Количество символов новой строки для добавления
Возвращаемое значение
integer|booleanКоличество байт, возвращенных при записи в stdout.
warn()source public
warn( string|array|null $message null , integer $newlines 1 )
Удобный метод для err(), который оборачивает сообщение между тегом <warning>
Параметры
- string|array|null
$messageoptional null - Строка или массив строк для вывода
- integer
$newlinesoptional 1 - Количество символов новой строки для добавления
Возвращаемое значение
integer|booleanКоличество байт, возвращенных при записи в stderr.
См. также
http://book.cakephp.org/3.0/en/console-and-shells.html#Shell::errwrapText()source public
wrapText( string $text , integer|array $options [] )
Обернуть блок текста. Позволяет установить ширину и отступ для блока текста.
Опции
-
widthШирина для обёртывания. По умолчанию 72 -
wordWrapОбёртывать только по разрывам слов (пробелы). По умолчанию true. -
indentОтступ текста с помощью предоставленной строки. По умолчанию null.
Параметры
- string
$text - Текст для форматирования.
- integer|array
$optionsoptional [] - Массив опций для использования или целое число для обёртывания текста.
Возвращаемое значение
stringОбёрнутый/отступом текст
См. также
\Cake\Utility\Text::wrap()Ссылка
http://book.cakephp.org/3.0/en/console-and-shells.html#Shell::wrapTextМетоды, используемые из Cake\ORM\Locator\LocatorAwareTrait
tableLocator()source public
tableLocator( Cake\ORM\Locator\LocatorInterface $tableLocator null )
Устанавливает локатор таблиц. Если параметры не переданы, вернет текущий используемый локатор.
Параметры
-
Cake\ORM\Locator\LocatorInterface$tableLocatoroptional 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
$leveloptional LogLevel::ERROR - Уровень ошибки.
- string|array
$contextoptional [] - Дополнительные данные лога, относящиеся к этому сообщению.
Возвращаемое значение
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
$optionsoptional [] - Опции, используемые при объединении свойств.
Методы, используемые из Cake\Datasource\ModelAwareTrait
_setModelClass()source protected
_setModelClass( string $name )
Установить свойства modelClass и modelKey на основе соглашений.
Если свойства уже установлены, они не будут перезаписаны
Параметры
- string
$name - Имя класса.
loadModel()source public
loadModel( string|null $modelClass null , string|null $modelType null )
Загружает и создает объекты репозитория, необходимые этому объекту
Обычно используется для загрузки объектов ORM Table по мере необходимости. Также может использоваться для загрузки других типов объектов репозитория, используемых вашим приложением.
Если поставщик репозитория не возвращает объект, будет выброшено исключение MissingModelException.
Параметры
- string|null
$modelClassoptional null - Имя класса модели для загрузки. По умолчанию $this->modelClass
- string|null
$modelTypeoptional 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
modelType( string|null $modelType null )
Установить или получить тип модели, который будет использоваться этим классом
Параметры
- string|null
$modelTypeoptional null - Тип модели или null для получения текущего
Возвращает
string|Cake\Datasource\ModelAwareTrait$this
Описание свойств
© 2005–2017 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.3/class-Cake.Shell.ServerShell.html