如何禁用E_STRICT

rta*_*oni 19 php

我需要关闭E_STRICT.我的php.ini中有error_reporting = E_ALL&〜E_STRICT,但似乎被忽略了.我在我的代码中试过这个:

ini_set('error_reporting', E_NOTICE);
Run Code Online (Sandbox Code Playgroud)

没有!

请帮忙.

Din*_*gar 9

试试这个.

error_reporting(E_ALL ^ E_STRICT);
Run Code Online (Sandbox Code Playgroud)

这将报告除E_STRICT之外的所有错误


sto*_*ofl 5

如果你有自己的错误处理程序(搜索你的代码set_error_handler),那么error_reporting配置值将被忽略:

重要的是要记住,对于error_types指定的错误类型,标准PHP错误处理程序是完全被绕过的,除非回调函数返回FALSE.error_reporting()设置将不起作用,无论如何都将调用您的错误处理程序 - 但是您仍然可以读取error_reporting的当前值并采取适当的操作.特别值得注意的是,如果导致错误的语句由@ error-control运算符预先添加,则此值将为0.

http://php.net/manual/en/function.set-error-handler.php

如果在调用(或)的同一文件中发生错误,那么E_STRICTerror_reporting配置中删除可能会失败.error_reporting(...)ini_set('error_reporting, ...')