Spec-Zone.ru › CakePHP 3.4

Класс ServerShell

Встроенная оболочка сервера

Cake\Console\Shell использует Cake\ORM\Locator\LocatorAwareTrait , Cake\Log\LogTrait , Cake\Utility\MergeVariablesTrait , Cake\Datasource\ModelAwareTrait
Extended by Cake\Shell\ServerShell
Пространство имён: Cake\Shell
Расположение: Shell/ServerShell.php

Краткое описание констант

  • string

    DEFAULT_HOST
    'localhost'
  • integer

    DEFAULT_PORT
    8765

Унаследованные константы

  • CODE_ERROR, CODE_SUCCESS, NORMAL, QUIET, VERBOSE

Краткое описание свойств

  • $_documentRoot protected
    string
    корень документа
  • $_host protected
    string
    хост сервера
  • $_port protected
    integer
    порт для прослушивания

Унаследованные свойства

  • OptionParser, Tasks, _io, _taskMap, args, command, interactive, name, params, plugin, rootName, taskNames, tasks _tableLocator _modelFactories, _modelType, modelClass

Краткое описание методов

  • _welcome() protected
    Отображает заголовок оболочки
  • getOptionParser() public
    Получает экземпляр парсера опций и настраивает его.
  • initialize() public
    Переопределяет инициализацию оболочки
  • main() public
    Переопределяет main() для обработки действия
  • startup() public

    Запускает оболочку и отображает сообщение приветствия. Позволяет проверять и настраивать перед выполнением команды или основного действия

Подробное описание методов

_welcome()source protected

_welcome( )

Отображает заголовок оболочки

Переопределяет

Cake\Console\Shell::_welcome()

getOptionParser()source public

getOptionParser( )

Получает экземпляр парсера опций и настраивает его.

Возвращает

Cake\Console\ConsoleOptionParser

Переопределяет

Cake\Console\Shell::getOptionParser()

initialize()source public

initialize( )

Переопределяет инициализацию оболочки

Переопределяет

Cake\Console\Shell::initialize()

main()source public

main( )

Переопределяет main() для обработки действия

startup()source public

startup( )

Запускает оболочку и отображает сообщение приветствия. Позволяет проверять и настраивать перед выполнением команды или основного действия

Переопределите этот метод, если хотите убрать информацию о приветствии или иначе изменить поток до команды.

Ссылка

https://book.cakephp.org/3.0/ru/console-and-shells.html#hook-methods

Переопределяет

Cake\Console\Shell::startup()

Методы, унаследованные от Cake\Console\Shell

__construct()source public

__construct( Cake\Console\ConsoleIo $io null )

Создаёт экземпляр этой оболочки.

Параметры

Cake\Console\ConsoleIo $io необязательно null
Экземпляр io.

Ссылка

https://book.cakephp.org/3.0/ru/console-and-shells.html#Shell

__debugInfo()source public

__debugInfo( )

Возвращает массив, который можно использовать для описания внутреннего состояния этого объекта.

Возвращает

массив

__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

abort()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-output

clear()source public

clear( )

Очистить консоль

Ссылка

https://book.cakephp.org/3.0/ru/console-and-shells.html#console-output

createFile()source public

createFile( string $path , string $contents )

Создаёт файл по заданному пути

Параметры

строка $path
Куда поместить файл.
строка $contents
Содержимое файла.

Возвращает

логическое значение
Успех

Ссылка

https://book.cakephp.org/3.0/ru/console-and-shells.html#creating-files
END_OF_DOCUMENT_MARKER

dispatchShell()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
Код выхода командной строки. 0 - успех.

Ссылка

https://book.cakephp.org/3.0/ru/console-and-shells.html#invoking-other-shells-from-your-shell

err()source public

err( string|array|null $message null , integer $newlines 1 )

Выводит одно или несколько сообщений об ошибках в stderr. Если параметры не указаны, выводит только новую строку.

Параметры

string|array|null $message необязательно null
Строка или массив строк для вывода
integer $newlines необязательно 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 $message необязательно null
Необязательное сообщение об ошибке
integer $exitCode необязательно self::CODE_ERROR
Код выхода для задачи оболочки.

Возвращает

integer
Код ошибки

Выбрасывает

Cake\Console\Exception\StopException

Ссылка

https://book.cakephp.org/3.0/ru/console-and-shells.html#styling-output

getIo()source public

getIo( )

Получить объект io для этой оболочки.

Возвращает

Cake\Console\ConsoleIo
Текущий объект ConsoleIo.

hasMethod()source public

hasMethod( string $name )

Проверка наличия вызываемого метода с заданным именем в этой оболочке.

Параметры

string $name
Имя метода для проверки.

Возвращает

boolean

Ссылка

https://book.cakephp.org/3.0/ru/console-and-shells.html#shell-tasks

hasTask()source public

hasTask( string $task )

Проверка наличия задачи с заданным именем в этой оболочке.

Параметры

string $task
Имя задачи для проверки.

Возвращает

boolean
Успешно

Ссылка

https://book.cakephp.org/3.0/ru/console-and-shells.html#shell-tasks

helper()source public

helper( string $name , array $settings [] )

Отображение помощника Console Helper

Создать и отобразить вывод для объекта помощника. Если объект помощника еще не загружен, он будет загружен и создан.

Параметры

string $name
Имя помощника для отображения
array $settings необязательно []
Данные конфигурации для помощника.

Возвращает

Cake\Console\Helper
Созданный экземпляр помощника.

hr()source public

hr( integer $newlines 0 , integer $width 63 )

Выводит серию символов тире в стандартный вывод, выполняя роль визуального разделителя.

Параметры

integer $newlines необязательно 0
Количество добавляемых новых строк до и после
integer $width необязательно 63
Ширина линии, по умолчанию 63

Ссылка

https://book.cakephp.org/3.0/ru/console-and-shells.html#Shell::hr

in()source public

in( string $prompt , string|array|null $options null , string|null $default null )

Запрашивает у пользователя ввод и возвращает его.

Параметры

string $prompt
Текст запроса.
string|array|null $options необязательно null
Массив или строка вариантов.
string|null $default необязательно null
Значение ввода по умолчанию.

Возвращает

mixed
Значение по умолчанию или введённое пользователем.

Ссылка

https://book.cakephp.org/3.0/ru/console-and-shells.html#Shell::in

info()source public

info( string|array|null $message null , integer $newlines 1 , integer $level Cake\Shell\Shell::NORMAL )

Удобный метод для out(), который оборачивает сообщение тегами

Параметры

string|array|null $message необязательно null
Строка или массив строк для вывода
integer $newlines необязательно 1
Количество добавляемых новых строк
integer $level необязательно Cake\Shell\Shell::NORMAL
Уровень вывода сообщения, см. выше.

Возвращает

integer|boolean
Количество байтов, возвращённых при записи в stdout.

См.

https://book.cakephp.org/3.0/ru/console-and-shells.html#Shell::out

io()source public

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

Возвращает

boolean

nl()source public

nl( integer $multiplier 1 )

Возвращает последовательность одной или нескольких новых строк.

Параметры

integer $multiplier необязательно 1
Количество повторений последовательности новых строк

Возвращает

string

Ссылка

https://book.cakephp.org/3.0/ru/console-and-shells.html#Shell::nl
END_OF_DOCUMENT_MARKER

out()source public

out( string|array|null $message null , integer $newlines 1 , integer $level Cake\Shell\Shell::NORMAL )

Выводит одно или несколько сообщений в стандартный вывод. Если параметры не переданы, выводится только символ новой строки.

Уровни вывода

Существует 3 встроенных уровня вывода. Shell::QUIET, Shell::NORMAL, Shell::VERBOSE. Уровни вывода verbose и quiet соответствуют переключателям вывода verbose и quiet , присутствующим в большинстве оболочек. Использование Shell::QUIET для сообщения означает, что оно всегда будет отображаться. В то время как использование Shell::VERBOSE означает, что оно будет отображаться только при включенном подробном выводе.

Параметры

строка|массив|null $message необязательно null
Строка или массив строк для вывода
целое число $newlines необязательно 1
Количество символов новой строки для добавления
целое число $level необязательно Cake\Shell\Shell::NORMAL
Уровень вывода сообщения, см. выше.

Возвращает

целое число|булево
Количество байтов, возвращенных при записи в стандартный вывод.

Ссылка

https://book.cakephp.org/3.0/ru/console-and-shells.html#Shell::out

param()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-console

setIo()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::shortPath

success()source public

success( string|array|null $message null , integer $newlines 1 , integer $level Cake\Shell\Shell::NORMAL )

Метод-удобство для out(), который оборачивает сообщение тегом

Параметры

строка|массив|null $message необязательно null
Строка или массив строк для вывода
целое число $newlines необязательно 1
Количество символов новой строки для добавления
целое число $level необязательно Cake\Shell\Shell::NORMAL
Уровень вывода сообщения, см. выше.

Возвращает

целое число|булево
Количество байтов, возвращенных при записи в стандартный вывод.

См. также

https://book.cakephp.org/3.0/ru/console-and-shells.html#Shell::out

verbose()source public

verbose( string|array $message , integer $newlines 1 )

Вывод на уровне verbose.

Параметры

строка|массив $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::err

wrapMessageWithType()source protected

wrapMessageWithType( string $messageType , string|array $message )

Оборачивает сообщение с заданным типом сообщения, например

Параметры

строка $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\LocatorInterface

setTableLocator()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
Сообщение журнала.
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( )

Получение типа модели, который будет использоваться этим классом

Возвращает

string

loadModel()source public

loadModel( string|null $modelClass null , string|null $modelType null )

Загрузка и создание объектов репозитория, необходимых для этого объекта

Обычно используется для загрузки объектов ORM Table, как требуется. Также может использоваться для загрузки других типов объектов репозитория, которые используются вашим приложением.

Если поставщик репозитория не возвращает объект, будет выброшено исключение 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

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

Магические методы, унаследованные от Cake\Console\Shell

main()

Подробности свойств

$_documentRootsource

protected string

корень документа

$_hostsource

protected string

хост сервера

$_portsource

protected integer

порт прослушивания

© 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.4/class-Cake.Shell.ServerShell.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API