如何在Symfony控制台中运行外部命令?

时间:2017-06-05 19:19:23

标签: php exec symfony-console

我有这个Symfony控制台类。

<?php


namespace System\Core\Console;

use \Symfony\Component\Console\Input\InputInterface;
use \Symfony\Component\Console\Output\OutputInterface;

class Test extends \Symfony\Component\Console\Command\Command
{


    protected function configure()
    {
        $this->setName('test')
            ->setDescription('Just for test execute external command such as "composer update".');
    }// configure


    protected function execute(InputInterface $input, OutputInterface $output)
    {
        exec('composer update 2>&1');
        $output->writeln('Success!');
    }// execute


}

运行命令 php myapp.php test 然后我得到了这个结果。

me@Mycom C:\wwwroot\myapp
> php myapp.php test
Success!
| <<--hang on blinking here!

它在最后一行闪烁时冻结,我无法启动新命令,直到 Ctrl + C

如何在Symfony控制台中执行“外部”程序?

我的Symfony控制台版本是v.3.latest。

0 个答案:

没有答案