PHP:错误日志文件中的停止通知和变量警告
时间:2020-01-09 10:43:01 来源:igfitidea点击:
我使用PHP错误日志记录来代替生产网站上显示的错误。
但是,我不想看到有关使用未初始化变量的错误消息。
我希望看到所有严重错误,但声明和编码标准警告除外。
如何禁用错误消息?
PHP使用位字段提供各种级别的错误报告,如下所示:
错误位 | 说明 |
---|---|
E_ALL | 所有错误和警告(不包括E_STRICT) |
E_ERROR | 致命的运行时错误 |
E_WARNING | 运行时警告(非致命错误) |
E_PARSE | 编译时解析错误 |
E_NOTICE | 运行时通知(这些警告通常是由代码中的错误引起的,但可能是故意的(例如,使用未初始化的变量并依赖于其自动初始化为空字符串的事实) |
E_STRICT | 运行时通知,使PHP可以建议对代码进行更改,以确保代码具有最佳的互操作性和正向兼容性。错误)在PHP初始启动期间发生 |
E_COMPILE_ERROR | 致命的编译时错误 |
E_COMPILE_WARNING | 编译时警告(非致命错误) |
E_USER_ERROR | 用户生成的错误消息 |
E_USER_WARNING | 用户生成的警告消息 |
E_USER_NOTICE | 用户生成的通知消息 |
仅显示错误
打开/etc/php.ini文件
# vi /etc/php.ini
设置error_reporting如下:
error_reporting = E_COMPILE_ERROR|E_ERROR|E_CORE_ERROR
或者,您可以显示所有错误,但注意事项和编码标准警告除外
error_reporting = E_ALL & ~E_NOTICE
保存并关闭文件。
重新启动Apache Web服务器:
# /etc/init.d/httpd restart
如果您使用的是nginx/lighttpd,请尝试:
# service nginx reload # service lighttpd restart