如何阻止PHP记录PHP注意错误

时间:2010-01-20 05:01:48

标签: php logging

我正在尝试不记录通知错误,这些错误被写入我服务器上的错误日志文件。我试过了(在index.php的顶部):

ini_set('display_errors', 0);  
error_reporting(E_ALL ^ E_NOTICE);

但我仍然在所述错误日志文件中收到PHP通知错误。

我在共享托管环境中,因此无法编辑php.ini文件。

phpinfo()告诉我:

- Version 5.2.12
- error_reporting 6143
- error_log error_log
- safe_mode Off

4 个答案:

答案 0 :(得分:8)

如果您在Apache服务器上,请尝试在.htaccess文件中设置该值。一般格式为:

php_flag  log_errors on
php_value error_log  /path/to/error.log
php_value error_reporting integer

其中integer是您通过运行以下内容获得的值:

echo E_ALL & ~E_NOTICE; // prints 30711

更多信息:

http://perishablepress.com/press/2008/01/14/advanced-php-error-handling-via-htaccess/

答案 1 :(得分:2)

尝试做:

error_reporting(E_ALL & ~E_NOTICE);

error_reporting()指令始终有效(PHP_INI_ALL)。

您确定不包含任何更改错误报告级别的库吗?


执行error_reporting(0);然后执行此操作:

var_dump(error_reporting());

输出是什么?

答案 2 :(得分:1)

您是否在日志中收到了通知或“用户”通知?

禁用两者:

error_reporting(E_ALL & ~E_NOTICE & ~E_USER_NOTICE);

答案 3 :(得分:0)

您可以将错误报告级别更改为不同的

error_reporting(E_ERROR | E_WARNING | E_PARSE);

有关详细信息,请参阅http://www.php.net/manual/en/function.error-reporting.php