Spec-Zone.ru › Yii 2.0

Класс yii\console\Controller

Все классы | Свойства | Методы | События | Константы
Наследование yii\console\Controller » yii\base\Controller » yii\base\Component » yii\base\Object
Реализует yii\base\Configurable, yii\base\ViewContextInterface
Подклассы yii\apidoc\commands\ApiController, yii\apidoc\commands\GuideController, yii\apidoc\components\BaseController, yii\console\controllers\AssetController, yii\console\controllers\BaseMigrateController, yii\console\controllers\CacheController, yii\console\controllers\FixtureController, yii\console\controllers\HelpController, yii\console\controllers\MessageController, yii\console\controllers\MigrateController, yii\console\controllers\ServeController, yii\faker\FixtureController, yii\gii\console\GenerateController, yii\mongodb\console\controllers\MigrateController, yii\shell\ShellController
Доступна с версии 2.0
Исходный код https://github.com/yiisoft/yii2/blob/master/framework/console/Controller.php

Controller — базовый класс для команд консоли.

Контроллер консоли состоит из одного или нескольких действий, известных как подкоманды. Пользователи вызывают команду консоли, указав соответствующий маршрут, который идентифицирует действие контроллера. Программа yii используется при вызове команды консоли, как в следующем примере:

yii <route> [--param1=value1 --param2 ...]

где <route> — маршрут к действию контроллера, а параметры будут заполнены как свойства команды. Подробности см. в options().

Открытые свойства

Свойство Тип Описание Определено в
$action yii\base\Action Действие, которое выполняется в данный момент. yii\base\Controller
$behaviors yii\base\Behavior[] Список поведений, присоединённых к этому компоненту yii\base\Component
$color boolean Включить ANSI цвет в выводе. yii\console\Controller
$defaultAction string Идентификатор действия, используемого, когда идентификатор действия не указан в запросе. yii\base\Controller
$help boolean Отображать ли справку о текущей команде. yii\console\Controller
$helpSummary string yii\console\Controller
$id string Идентификатор этого контроллера. yii\base\Controller
$interactive boolean Выполнять команду в интерактивном режиме. yii\console\Controller
$layout null|string|false Имя макета, применяемого к представлениям этого контроллера. yii\base\Controller
$module yii\base\Module Модуль, к которому принадлежит этот контроллер. yii\base\Controller
$modules yii\base\Module[] Все родительские модули, в которых находится этот контроллер. yii\base\Controller
$passedOptionValues array Свойства, соответствующие переданным параметрам yii\console\Controller
$passedOptions array Имена параметров, переданных во время выполнения yii\console\Controller
$route string Маршрут (ID модуля, ID контроллера и ID действия) текущего запроса. yii\base\Controller
$uniqueId string ID контроллера, префикс которого — ID модуля (если есть). yii\base\Controller
$view yii\base\View|yii\web\View Объект представления, который может быть использован для отрисовки представлений или файлов представлений. yii\base\Controller
$viewPath string Директория, содержащая файлы представлений для этого контроллера. yii\base\Controller

Открытые методы

Метод Описание Определено в
__call() Вызывает именованный метод, который не является методом класса. yii\base\Object
__clone() Этот метод вызывается после создания объекта путем клонирования существующего. yii\base\Component
__construct() yii\base\Controller
__get() Возвращает значение свойства объекта. yii\base\Object
__isset() Проверяет, установлено ли свойство, т.е. определено и не равно null. yii\base\Object
__set() Устанавливает значение свойства объекта. yii\base\Object
__unset() Устанавливает свойство объекта в значение null. yii\base\Object
actions() Объявляет внешние действия для контроллера. yii\base\Controller
afterAction() Этот метод вызывается сразу после выполнения действия. yii\base\Controller
ansiFormat() Форматирует строку с кодами ANSI. yii\console\Controller
attachBehavior() Прикрепляет поведение к этому компоненту. yii\base\Component
attachBehaviors() Прикрепляет список поведений к компоненту. yii\base\Component
beforeAction() Этот метод вызывается непосредственно перед выполнением действия. yii\base\Controller
behaviors() Возвращает список поведений, которые должен иметь этот компонент. yii\base\Component
bindActionParams() Связывает параметры с действием. yii\console\Controller
canGetProperty() Возвращает значение, указывающее, можно ли прочитать свойство. yii\base\Object
canSetProperty() Возвращает значение, указывающее, можно ли установить свойство. yii\base\Object
className() Возвращает полное квалифицированное имя этого класса. yii\base\Object
confirm() Запрашивает у пользователя подтверждение, введя y или n. yii\console\Controller
createAction() Создает действие на основе заданного идентификатора действия. yii\base\Controller
detachBehavior() Отсоединяет поведение от компонента. yii\base\Component
detachBehaviors() Отсоединяет все поведения от компонента. yii\base\Component
ensureBehaviors() Убеждается, что поведения, объявленные в behaviors(), прикреплены к этому компоненту. yii\base\Component
findLayoutFile() Находит соответствующий файл макета. yii\base\Controller
getActionArgsHelp() Возвращает справочную информацию по анонимным аргументам для действия. yii\console\Controller
getActionHelp() Возвращает подробную справочную информацию для указанного действия. yii\console\Controller
getActionHelpSummary() Возвращает краткое описание указанного действия в одной строке. yii\console\Controller
getActionOptionsHelp() Возвращает справочную информацию по опциям для действия. yii\console\Controller
getBehavior() Возвращает объект именованного поведения. yii\base\Component
getBehaviors() Возвращает все присоединенные к этому компоненту поведения. yii\base\Component
getHelp() Возвращает справочную информацию для этого контроллера. yii\console\Controller
getHelpSummary() Возвращает краткое описание этого контроллера в одной строке. yii\console\Controller
getModules() Возвращает все родительские модули этого контроллера. yii\base\Controller
getOptionValues() Возвращает свойства, соответствующие опциям для идентификатора действия. Дочерние классы могут переопределять этот метод для указания возможных свойств. yii\console\Controller
getPassedOptionValues() Возвращает свойства, соответствующие переданным опциям. yii\console\Controller
getPassedOptions() Возвращает имена допустимых опций, переданных во время выполнения. yii\console\Controller
getRoute() Возвращает маршрут текущего запроса. yii\base\Controller
getUniqueId() Возвращает уникальный идентификатор контроллера. yii\base\Controller
getView() Возвращает объект представления, который можно использовать для отображения представлений или файлов представлений. yii\base\Controller
getViewPath() Возвращает каталог, содержащий файлы представлений для этого контроллера. yii\base\Controller
hasEventHandlers() Возвращает значение, указывающее, есть ли обработчик, прикрепленный к указанному событию. yii\base\Component
hasMethod() Возвращает значение, указывающее, определен ли метод. yii\base\Object
hasProperty() Возвращает значение, указывающее, определено ли свойство. yii\base\Object
init() Инициализирует объект. yii\base\Object
isColorEnabled() Возвращает значение, указывающее, включен ли цвет ANSI. yii\console\Controller
off() Отсоединяет существующий обработчик событий от этого компонента. yii\base\Component
on() Прикрепляет обработчик событий к событию. yii\base\Component
optionAliases() Возвращает псевдонимы опций. yii\console\Controller
options() Возвращает имена допустимых опций для действия (id). Опция требует существования публичной переменной члена, имя которой совпадает с именем опции. yii\console\Controller
prompt() Запрашивает у пользователя ввод и проверяет его. yii\console\Controller
render() Отображает представление и применяет макет, если он доступен. yii\base\Controller
renderContent() Отображает статическую строку, применяя макет. yii\base\Controller
renderFile() Отображает файл представления. yii\base\Controller
renderPartial() Отображает представление без применения макета. yii\base\Controller
run() Выполняет запрос, заданный в виде маршрута. yii\base\Controller
runAction() Выполняет действие с указанным идентификатором действия и параметрами. yii\console\Controller
select() Предлагает пользователю выбор из вариантов. Ввод '?' покажет список вариантов и их описаний. yii\console\Controller
setView() Устанавливает объект представления, который будет использоваться данным контроллером. yii\base\Controller
setViewPath() Устанавливает директорию, содержащую файлы представлений. yii\base\Controller
stderr() Выводит строку в STDERR yii\console\Controller
stdout() Выводит строку в STDOUT yii\console\Controller
trigger() Вызывает событие. yii\base\Component

Защищённые методы

Метод Описание Определено в
getActionMethodReflection() yii\console\Controller
parseDocCommentDetail() Возвращает полное описание из блока документации. yii\console\Controller
parseDocCommentSummary() Возвращает первую строку блока документации. yii\console\Controller
parseDocCommentTags() Парсит блок комментариев на метки. yii\console\Controller

События

Событие Тип Описание Определено в
EVENT_AFTER_ACTION yii\base\ActionEvent Событие, срабатывающее сразу после выполнения действия контроллера. yii\base\Controller
EVENT_BEFORE_ACTION yii\base\ActionEvent Событие, срабатывающее непосредственно перед выполнением действия контроллера. yii\base\Controller

Константы

Константа Значение Описание Определено в
EXIT_CODE_ERROR 1 yii\console\Controller
EXIT_CODE_NORMAL 0 yii\console\Controller

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

$color общедоступное свойство

Включить цвет ANSI в выводе. Если не задано, цвет ANSI будет включен только для терминалов, которые его поддерживают.

public boolean $color = null

$help общедоступное только для чтения свойство (доступно начиная с версии 2.0.10)

Отображать ли информацию о помощи для текущей команды.

public string getHelp ( )

$helpSummary общедоступное только для чтения свойство

public string getHelpSummary ( )

$interactive общедоступное свойство

Выполнять команду в интерактивном режиме.

public boolean $interactive = true

$passedOptionValues общедоступное только для чтения свойство

Свойства, соответствующие переданным параметрам.

public array getPassedOptionValues ( )

$passedOptions общедоступное только для чтения свойство

Имена параметров, переданных во время выполнения.

public array getPassedOptions ( )

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

ansiFormat() public method

Форматирует строку с кодами ANSI

Вы можете передать дополнительные параметры, используя константы, определённые в yii\helpers\Console.

Пример:

echo $this->ansiFormat('This will be red and underlined.', Console::FG_RED, Console::UNDERLINE);
public string ansiFormat ( $string )
$string string

Строка, подлежащая форматированию

bindActionParams() public method

Связывает параметры с действием.

Этот метод вызывается классом yii\base\Action при его запуске с заданными параметрами. Сначала метод связывает параметры с доступными опциями для действия. Затем он проверяет переданные аргументы.

public array bindActionParams ( $action, $params )
$action yii\base\Action

Действие, к которому будут привязаны параметры

$params array

Параметры, подлежащие привязке к действию

return array

Допустимые параметры, с которыми действие может быть выполнено.

throws yii\console\Exception

если имеются неизвестные опции или недостающие аргументы

confirm() public method

Запрашивает подтверждение у пользователя, введя y или n.

Типичное использование выглядит следующим образом:

if ($this->confirm("Are you sure?")) {
    echo "user typed yes\n";
} else {
    echo "user typed no\n";
}
public boolean confirm ( $message, $default = false )
$message string

Выводится перед ожиданием ввода от пользователя

$default boolean

Это значение возвращается, если выбор не сделан.

return boolean

Подтвердил ли пользователь. Вернёт true, если $interactive ложно.

getActionArgsHelp() public method

Возвращает справочную информацию по анонимным аргументам для действия.

Возвращаемое значение должно быть массивом. Ключи — имена аргументов, значения — соответствующая справочная информация. Каждое значение должно быть массивом следующей структуры:

  • required: boolean, обязателен ли этот аргумент.
  • type: string, тип PHP этого аргумента.
  • default: string, значение по умолчанию этого аргумента
  • comment: string, комментарий к этому аргументу

Реализация по умолчанию возвращает справочную информацию, извлечённую из комментария к методу документации параметров, соответствующих методу действия.

public array getActionArgsHelp ( $action )
$action yii\base\Action
return array

Справочная информация о параметрах действия

getActionHelp() public method

Возвращает подробную справочную информацию для указанного действия.

public string getActionHelp ( $action )
$action yii\base\Action

Действие, для которого нужно получить справку

return string

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

getActionHelpSummary() public method

Возвращает краткое описание указанного действия в одной строке.

public string getActionHelpSummary ( $action )
$action yii\base\Action

Действие, для которого нужно получить краткое описание

return string

Краткое описание указанного действия в одной строке.

getActionMethodReflection() protected method

protected ReflectionMethod getActionMethodReflection ( $action )
$action yii\base\Action

getActionOptionsHelp() public method

Возвращает справочную информацию по опциям действия.

Возвращаемое значение должно быть массивом. Ключи — имена опций, значения — соответствующая справочная информация. Каждое значение должно быть массивом следующей структуры:

  • type: string, тип PHP этого аргумента.
  • default: string, значение по умолчанию этого аргумента
  • comment: string, комментарий к этому аргументу

Реализация по умолчанию возвращает справочную информацию, извлечённую из комментария к свойствам, соответствующим опциям действия.

public array getActionOptionsHelp ( $action )
$action yii\base\Action
return array

Справочная информация об опциях действия

getHelp() public method

Возвращает справочную информацию по контроллеру.

Вы можете переопределить этот метод, чтобы вернуть настраиваемую справку. Реализация по умолчанию возвращает справочную информацию, полученную из PHPDoc комментария.

public string getHelp ( )

getHelpSummary() public method

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

Вы можете переопределить этот метод, чтобы вернуть настраиваемое краткое описание. Реализация по умолчанию возвращает первую строку из PHPDoc комментария.

public string getHelpSummary ( )

getOptionValues() public method

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

public array getOptionValues ( $actionID )
$actionID string

Идентификатор действия текущего запроса

return array

Свойства, соответствующие опциям для действия

getPassedOptionValues() public method

Возвращает свойства, соответствующие переданным опциям

public array getPassedOptionValues ( )
return array

Свойства, соответствующие переданным опциям

getPassedOptions() public method

Возвращает имена допустимых опций, переданных во время выполнения.

public array getPassedOptions ( )
return array

Имена переданных опций во время выполнения

isColorEnabled() public method

Возвращает значение, указывающее, включен ли цвет ANSI.

Цвет ANSI включён только если $color установлено в true или не установлено, и терминал поддерживает цвет ANSI.

public boolean isColorEnabled ( $stream = \STDOUT )
$stream resource

Поток для проверки.

return boolean

Включить ли ANSI-стиль в выводе.

optionAliases() public method (доступно начиная с версии 2.0.8)

Возвращает псевдонимы опций.

Дочерние классы могут переопределить этот метод, чтобы указать псевдонимы опций.

См. также options().

общедоступный массив optionAliases ( )
возвращает массив

Псевдонимы опций, допустимые для действия, где ключ — это псевдоним опции, а значение — имя опции.

options() общедоступный метод

Возвращает имена допустимых опций для действия (id). Опция требует наличия открытого переменной члена, имя которого соответствует имени опции.

Подклассы могут переопределять этот метод для указания возможных опций.

Обратите внимание, что значения, заданные через опции, недоступны до вызова beforeAction().

общедоступный строка[] options ( $actionID )
$actionID строка

Идентификатор действия текущего запроса

возвращает строка[]

Имена опций, допустимых для действия

parseDocCommentDetail() защищённый метод

Возвращает полное описание из блока документации.

защищённый строка parseDocCommentDetail ( $reflection )
$reflection Reflector

parseDocCommentSummary() защищённый метод

Возвращает первую строку блока документации.

защищённый строка parseDocCommentSummary ( $reflection )
$reflection Reflector

parseDocCommentTags() защищённый метод

Парсит блок комментариев на теги.

защищённый массив parseDocCommentTags ( $reflection )
$reflection Reflector

Блок комментариев

возвращает массив

Парсированные теги

prompt() общедоступный метод

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

общедоступный строка prompt ( $text, $options = [] )
$text строка

Строка запроса

$options массив

Опции для проверки ввода:

  • required: требуется или нет
  • default: значение по умолчанию, если пользователь не вводит
  • pattern: шаблон регулярного выражения для проверки ввода пользователя
  • validator: вызываемая функция для проверки ввода. Функция должна принимать два параметра:
    • $input: ввод пользователя для проверки
    • $error: значение ошибки, передаваемое по ссылке, если проверка не пройдена.

Пример использования метода prompt с функцией проверки.

$code = $this->prompt('Enter 4-Chars-Pin', ['required' => true, 'validator' => function($input, &$error) {
    if (strlen($input) !== 4) {
        $error = 'The Pin must be exactly 4 chars!';
        return false;
    }
    return true;
}]);
возвращает строка

Ввод пользователя

runAction() общедоступный метод

Выполняет действие с указанным идентификатором действия и параметрами.

Если идентификатор действия пустой, метод будет использовать $defaultAction.

См. также createAction().

общедоступный целое число runAction ( $id, $params = [] )
$id строка

Идентификатор действия, которое нужно выполнить.

$params массив

Параметры (имя-значение) для передачи действию.

возвращает целое число

Статус выполнения действия. 0 — нормальный, другие значения — аномальный.

бросает yii\base\InvalidRouteException

если запрашиваемый идентификатор действия не может быть успешно разрешен в действие.

бросает yii\console\Exception

если имеются неизвестные опции или недостающие аргументы

select() общедоступный метод

Даёт пользователю возможность выбора из предложенных вариантов. Ввод '?' отобразит список доступных опций и их описаний.

общедоступный строка select ( $prompt, $options = [] )
$prompt строка

Сообщение запроса

$options массив

Массив ключ-значение доступных вариантов

возвращает строка

Символ выбранной опции

stderr() общедоступный метод

Выводит строку в STDERR

Вы можете дополнительно форматировать строку с помощью ANSI-кодов, передав дополнительные параметры, используя константы, определенные в yii\helpers\Console.

Пример:

$this->stderr('This will be red and underlined.', Console::FG_RED, Console::UNDERLINE);
общедоступный целое число|булево значение stderr ( $string )
$string строка

Строка для вывода

возвращает целое число|булево значение

Количество выведенных байт или false при ошибке

stdout() общедоступный метод

Выводит строку в STDOUT

Вы можете дополнительно форматировать строку с помощью ANSI-кодов, передав дополнительные параметры, используя константы, определенные в yii\helpers\Console.

Пример:

$this->stdout('This will be red and underlined.', Console::FG_RED, Console::UNDERLINE);
общедоступный целое число|булево значение stdout ( $string )
$string строка

Строка для вывода

возвращает целое число|булево значение

Количество выведенных байт или false при ошибке

© 2008–2017 by Yii Software LLC
Licensed under the three clause BSD license.
http://www.yiiframework.com/doc-2.0/yii-console-controller.html

Spec-Zone.ru

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