Приложение
класс Application
Приложение — контейнер для набора команд.
Это основной входной пункт консольного приложения.
Этот класс оптимизирован для стандартной среды CLI.
Использование:
$app = new Application('myapp', '1.0 (stable)');
$app->add(new SimpleCommand());
$app->run();
Методы
| __construct(string $name = 'UNKNOWN', string $version = 'UNKNOWN') | ||
| setDispatcher(EventDispatcherInterface $dispatcher) | ||
| int | run(InputInterface $input = null, OutputInterface $output = null) Выполняет текущее приложение. | |
| int | doRun(InputInterface $input, OutputInterface $output) Выполняет текущее приложение. | |
| setHelperSet(HelperSet $helperSet) | ||
| HelperSet | getHelperSet() Получить набор помощников, связанный с командой. | |
| setDefinition(InputDefinition $definition) | ||
| InputDefinition | getDefinition() Получить InputDefinition, связанный с этим приложением. | |
| string | getHelp() Получить сообщение справки. | |
| setCatchExceptions(bool $boolean) Устанавливает, нужно ли перехватывать исключения во время выполнения команд. | ||
| setAutoExit(bool $boolean) Устанавливает, нужно ли автоматически завершать приложение после выполнения команды. | ||
| string | getName() Получить имя приложения. | |
| setName(string $name) Установить имя приложения. | ||
| string | getVersion() Получить версию приложения. | |
| setVersion(string $version) Установить версию приложения. | ||
| string | getLongVersion() Возвращает полную версию приложения. | |
| Command | register(string $name) Регистрирует новую команду. | |
| addCommands(array $commands) Добавляет массив объектов команд. | ||
| Command|null | add(Command $command) Добавляет объект команды. | |
| Command | get(string $name) Возвращает зарегистрированную команду по имени или псевдониму. | |
| bool | has(string $name) Возвращает true, если команда существует, иначе false. | |
| string[] | getNamespaces() Возвращает массив всех уникальных пространств имен, используемых текущими зарегистрированными командами. | |
| string | findNamespace(string $namespace) Находит зарегистрированное пространство имен по имени или сокращению. | |
| Command | find(string $name) Находит команду по имени или псевдониму. | |
| Command[] | all(string $namespace = null) Получает команды (зарегистрированные в указанном пространстве имен, если оно предоставлено). | |
| static array | getAbbreviations(array $names) Возвращает массив возможных сокращений, заданных набором имен. | |
| string | asText(string $namespace = null, bool $raw = false) deprecated Возвращает текстовое представление приложения. | |
| string|DOMDocument | asXml(string $namespace = null, bool $asDom = false) deprecated Возвращает XML-представление приложения. | |
| renderException($e, $output) Отображает перехваченное исключение. | ||
| array | getTerminalDimensions() Пытается определить размеры терминала на основе текущей среды. | |
| $this | setTerminalDimensions(int $width, int $height) Устанавливает размеры терминала. | |
| string | extractNamespace(string $name, string $limit = null) Возвращает часть пространства имен имени команды. | |
| setDefaultCommand(string $commandName) Устанавливает имя по умолчанию для команды. |
Подробности
__construct(string $name = 'UNKNOWN', string $version = 'UNKNOWN')
Параметры
| string | $name | Название приложения |
| string | $version | Версия приложения |
setDispatcher(EventDispatcherInterface $dispatcher)
Параметры
| EventDispatcherInterface | $dispatcher |
int run(InputInterface $input = null, OutputInterface $output = null)
Выполняет текущее приложение.
Параметры
| InputInterface | $input | |
| OutputInterface | $output |
Значение возврата
| int | 0, если всё прошло хорошо, или код ошибки |
Исключения
| Exception | При возникновении ошибки во время выполнения. Пропускается, если {@link setCatchExceptions()}. |
int doRun(InputInterface $input, OutputInterface $output)
Выполняет текущее приложение.
Параметры
| InputInterface | $input | |
| OutputInterface | $output |
Значение возврата
| int | 0, если всё прошло хорошо, или код ошибки |
setHelperSet(HelperSet $helperSet)
Параметры
| HelperSet | $helperSet |
HelperSet getHelperSet()
Получить набор помощников, связанных с командой.
Значение возврата
| HelperSet | Экземпляр HelperSet, связанный с этой командой |
setDefinition(InputDefinition $definition)
Параметры
| InputDefinition | $definition |
InputDefinition getDefinition()
Получает InputDefinition, связанную с этим приложением.
Значение возврата
| InputDefinition | Экземпляр InputDefinition |
string getHelp()
Получить сообщение справки.
Значение возврата
| string | Сообщение справки |
setCatchExceptions(bool $boolean)
Установить, перехватывать ли исключения во время выполнения команд.
Параметры
| bool | $boolean | Перехватывать ли исключения во время выполнения команд |
setAutoExit(bool $boolean)
Установить, автоматически ли завершать выполнение после выполнения команды.
Параметры
| bool | $boolean | Автоматически завершать выполнение после выполнения команды или нет |
string getName()
Получить имя приложения.
Значение возврата
| string | Имя приложения |
setName(string $name)
Установить имя приложения.
Параметры
| string | $name | Имя приложения |
string getVersion()
Получить версию приложения.
Значение возврата
| string | Версия приложения |
setVersion(string $version)
Установить версию приложения.
Параметры
| string | $version | Версия приложения |
string getLongVersion()
Возвращает полную версию приложения.
Значение возврата
| string | Полная версия приложения |
Command register(string $name)
Регистрирует новую команду.
Параметры
| string | $name | Имя команды |
Значение возврата
| Command | Созданная команда |
addCommands(array $commands)
Добавляет массив объектов команд.
Если команда не включена, она не будет добавлена.
Параметры
| array | $commands | Массив команд |
Command|null add(Command $command)
Добавляет объект команды.
Если команда с таким же именем уже существует, она будет перезаписана. Если команда не включена, она не будет добавлена.
Параметры
| Command | $command |
Значение возврата
| Command|null | Зарегистрированная команда, если она включена, или null |
Command get(string $name)
Возвращает зарегистрированную команду по имени или псевдониму.
Параметры
| string | $name | Имя команды или псевдоним |
Значение возврата
| Command | Объект Command |
Исключения
| InvalidArgumentException | Если заданное имя команды не существует |
bool has(string $name)
Возвращает true, если команда существует, и false в противном случае.
Параметры
| string | $name | Имя команды или псевдоним |
Значение возврата
| bool | true, если команда существует, и false в противном случае |
string[] getNamespaces()
Возвращает массив всех уникальных пространств имен, используемых текущими зарегистрированными командами.
Он не возвращает глобальное пространство имен, которое всегда существует.
Значение возврата
| string[] | Массив пространств имен |
string findNamespace(string $namespace)
Находит зарегистрированное пространство имен по имени или сокращению.
Параметры
| string | $namespace | Пространство имен или сокращение для поиска |
Значение возврата
| string | Зарегистрированное пространство имен |
Исключения
| InvalidArgumentException | Если пространство имен неверно или неоднозначно |
Command find(string $name)
Находит команду по имени или псевдониму.
В отличие от get, эта команда пытается найти наилучшее соответствие, если вы предоставите сокращение имени или псевдонима.
Параметры
| string | $name | Имя команды или псевдоним команды |
Значение возврата
| Command | Экземпляр Command |
Исключения
| InvalidArgumentException | Если имя команды неверно или неоднозначно |
Command[] all(string $namespace = null)
Получает команды (зарегистрированные в указанном пространстве имён, если оно предоставлено).
Ключи массива — полные имена, а значения — экземпляры команд.
Параметры
| строка | $namespace | Имя пространства имён |
Возвращаемое значение
| Command[] | Массив экземпляров Command |
static array getAbbreviations(array $names)
Возвращает массив возможных сокращений, заданных набором имён.
Параметры
| массив | $names | Массив имён |
Возвращаемое значение
| массив | Массив сокращений |
string asText(string $namespace = null, bool $raw = false) устаревший
устаревший
Возвращает текстовое представление приложения.
Параметры
| строка | $namespace | Необязательное имя пространства имён |
| булево | $raw | Возвращать ли список команд в сыром виде |
Возвращаемое значение
| строка | Строка, представляющая приложение |
string|DOMDocument asXml(string $namespace = null, bool $asDom = false) устаревший
устаревший
Возвращает XML-представление приложения.
Параметры
| строка | $namespace | Необязательное имя пространства имён |
| булево | $asDom | Возвращать DOM или строку XML |
Возвращаемое значение
| строка|DOMDocument | XML-строка, представляющая приложение |
renderException($e, $output)
Отображает пойманное исключение.
Параметры
| $e | ||
| $output |
array getTerminalDimensions()
Пытается определить размеры терминала на основе текущей среды.
Возвращаемое значение
| массив | Массив, содержащий ширину и высоту |
$this setTerminalDimensions(int $width, int $height)
Устанавливает размеры терминала.
Может быть полезно для принудительного задания размеров терминала для функциональных тестов.
Параметры
| целое | $width | Ширина |
| целое | $height | Высота |
Возвращаемое значение
| $this |
string extractNamespace(string $name, string $limit = null)
Возвращает часть пространства имён имени команды.
Этот метод не входит в общедоступный API и не должен использоваться напрямую.
Параметры
| строка | $name | Полное имя команды |
| строка | $limit | Максимальное количество частей пространства имён |
Возвращаемое значение
| строка | Пространство имён команды |
setDefaultCommand(string $commandName)
Устанавливает имя команды по умолчанию.
Параметры
| строка | $commandName | Имя команды |
© 2004–2017 Fabien Potencier
Licensed under the MIT License.
http://api.symfony.com/2.7/Symfony/Component/Console/Application.html