0

我在我的 Symfony2 项目中触发了一个错误,如下所示:

trigger_error('message', E_USER_NOTICE);

如何抑制此错误,以使我没有收到代码 500 响应,而仅使用独白记录此通知?

谢谢

4

1 回答 1

1

trigger_error不推荐使用在 Symfony2 中触发错误的方法。在 Symfony2 中触发错误的推荐方法是使用异常。在 Symfony2 中,您可以使用全局异常和 Symfony2 框架创建的异常,甚至是您在捆绑包中创建的异常:

<?php
// src/Acme/DemoBundle/Exception/FooException.php
namespace Acme\DemoBundle\Exception;

class FooException extends \Exception
{
}
<?php
// src/Acme/DemoBundle/Controller/FooController.php

// ...
use Acme\DemoBundle\Exception\FooException;

// ...
public function barAction()
{
    // ... do something

    // throw an error
    throw new FooException('message');
}

但是,如果您想将某些内容记录到文件中,您可以更好地使用其中一项服务monolog.loggerdoctrineeventprofilerrequestrouter或)。有关更多信息,请阅读独白文档。您还可以创建自己的 Monolog 记录器,创建服务并使用它。securitytemplating

于 2012-11-16T13:17:47.410 回答