抛出异常时,Symfony2不会显示500错误

时间:2016-10-23 00:30:53

标签: symfony

看看这个简单的代码:

  public function test(){
    if(sth){ //true
      throw new Exception("Bla Bla");
    }
  }

在控制器中运行:

  try {
    test();
  } catch (Exception $e) {
    $toSend = $e->getMessage();
    return $this->render('view.html.twig', array('toSend' => $toSend);
  }

我想在控制器渲染view.twig.html中使用该函数,并在toSend变量中发送'Bla Bla'。

我正在500 Internal Server Error - Exception

最好的问候

1 个答案:

答案 0 :(得分:4)

我发现代码中存在一些语法错误。

  1. 您必须写throw new \Exception("Bla Bla")而不是throw Exception("Bla Bla")
  2. 您必须写catch (\Exception $e)而不是catch (Exception $e)
  3. 如果你没有在Exception类之前放置“\”,这意味着它会在你当前的命名空间中找到Exception类。如果它找不到它,它将抛出异常。