猿问

为什么在 PHP 7.2.19 中当 error_reporting() 设置为 0 时

为什么 PHP 7.2.19 当 error_reporting() 设置为 0 时,后续的 ini_set() 会被忽略。PHP Docs 中没有提及这种行为。这是一个错误还是非常糟糕的文档?


error_reporting(0);

ini_set(log_errors, '1');  //This directive is ignored and nothing is logged

但是,如果在 php.ini 中将 display_errors 设置为“off”,则以下语句有效


error_reporting(E_ALL);

ini_set(log_errors, '1');  //This directive is executed 


侃侃无极
浏览 173回答 1
1回答

收到一只叮咚

让我以对话的形式解释一下:什么时候 error_reporting(0)PHP: Ooopsie-daisy,你在代码中犯了一个错误。让我检查一下error_reporting级别,看看你是否想知道这件事。你:不,忽略所有错误/警告/信息。我已设置error_reporting为 0。对发生的事情一言不发,明白吗?什么时候 error_reporting(E_ALL)PHP: Ooopsie-daisy,你在代码中犯了一个错误。让我检查一下error_reporting级别,看看你是否想知道这件事。你:是的,告诉我一切!PHP:好的,让我知道你想知道发生了什么。你:我已经设置log_errors为1了。你能不能把所有的错误都放到一个文件里,我有空的时候会检查一下。PHP:当然。您希望我也向浏览器中的用户显示相同的错误吗?你:不。用户不需要知道。我设置display_errors为0。
随时随地看视频慕课网APP
我要回答