ЗАГРУЗКА
“ Command Line Interface (CLI) — это интерфейс командной строки. ”
НПО Кристалл
Основная цель CLI - упрощённое управление программным комплексом Кристалл из командной строки, например, установка, создание резервных копий, запуск планировщика заданий...
Команда вызывает метод из класса, после выводит hello world и некоторый текст в терминал.
/**
* Имя команды по умолчанию
*
* @var string
*/
protected static $defaultName = 'commandgroup:commandname';
/**
* SymfonyStyle Object
*
* @var SymfonyStyle
*/
private $ioStyle;
/**
* Код возврата, в случае не удачи.
*/
const COMMANDNAME_FAILED = 1;
/**
* Код возврата, в случае успеха.
*/
const COMMANDNAME_SUCCESSFUL = 0;
/**
* Настраивает IO (ввод-вывод)
*
* @param InputInterface $input Входные данные для ввода в команду.
* @param OutputInterface $output Выходные данные для внедрения в команду.
*
* @return void
*/
private function configureIO(InputInterface $input, OutputInterface $output): void {
$this->ioStyle = new SymfonyStyle($input, $output);
}
/**
* Внутренняя функция для выполнения команды.
*
* @param InputInterface $input Входные данные для ввода в команду.
* @param OutputInterface $output Выходные данные для внедрения в команду.
*
* @return integer Код статуса выполнения команды.
*/
protected function doExecute(InputInterface $input, OutputInterface $output): int {
$this->configureIO($input, $output);
$returnCode = $this->getApplication()
->getCommand(SetCommandgroupCommand::getDefaultName())
->execute(/* Метод из контейнера, который необходимо выполнить */, $output);
if ($returnCode === 0) {
$this->ioStyle->success('Hello World!');
return self::COMMANDNAME_SUCCESSFUL;
}
return self::COMMANDNAME_FAILED;
}
/**
* Настройка команды.
*
* @return void
*/
protected function configure(): void {
$help = "Команда <info>%command.name%</info> выводит hello world всем, кто её вызывает
\nИспользование: <info>php %command.full_name%</info>";
$this->setDescription('Эта команда печатает hello world тому, кто её вызывает.');
$this->setHelp($help);
}
Компания НПО «Кристалл» - российская многопрофильная ИТ-компания, уже более 12 предоставляет профессиональные услуги и высокотехнологичные решения в области IT-консалтинга, интеграционных проектов и разработки программного обеспечения для корпоративных заказчиков.
ПОДРОБНЕЕ8 800 300 2628,
+7 (4217) 591-830
+7 (962) 297-36-06
info@mbskristall.ru, poisk_kms@mail.ru
681016, Россия, Хабаровский край, г. Комсомольск-на-Амуре, ул. Кирова, 5, п. 1001