Symfony 2.8:在控制器中使用进程获取消息命令

Symfony 2.8 : Get message command using Process in controller

我有一个处理数据添加数据库的文件命令。我使用 Document Symfony 2.8 Process 在控制器中进行处理。 一切 运行 都很好。但是我得到一个错误。在文件命令中,我使用 if-else 来检查数据。处理 运行 $process->run() 时,我无法在 else 中得到错误(否则。我使用 echo 来显示错误)。

if (!empty($id)) {
  // handling code
} else {
 echo "not found Id"
}

你有什么想法吗?请帮助我!

我使用的文档:https://symfony.com/doc/current/components/process.html

通常您可以使用以下方法获取过程的输出:echo $process->getOutput(); 或者在您的情况下您可以抛出异常

if (!empty($id)) {
    // handling code
} else {
    throw new \Exception('Id not found');
}

然后像那样将您的进程放在 try catch 块中

try {
    $process->mustRun();

    echo $process->getOutput();
} catch (\Exception $exception) {
    echo $exception->getMessage();
}