PHP异常显示在try和catch块中

jto*_*mpl 2 php error-handling exception-handling

我有一个非常奇怪的情况:下面显示的代码应该在PHP中不打印错误.

try {
    throw new Exception('foo');
} catch(Exception $e) {
    // here could be some custom functions to handle errors
    die();
}
Run Code Online (Sandbox Code Playgroud)

在我的电脑上打印

( ! ) SCREAM: Error suppression ignored for
( ! ) Exception: foo. in D:\wamp\www\index.php on line 4
Run Code Online (Sandbox Code Playgroud)

为什么?哪个php ini选项可以做到这一点?

SDC*_*SDC 5

Scream扩展是针对开发人员的扩展,因此即使通常会被抑制,他们也可以从代码中看到错误消息.

xDebug是另一个开发人员扩展,它也包含相同的功能.

如果您具有这些扩展中的任何一个,则可以在PHP配置中禁用Scream功能.

但这些扩展都不应该在生产系统上使用 - 它们仅用于开发人员的系统.如果它在您的实际网站上,则应完全禁用该扩展程序.