如何移除PHP错误报告中的废弃(Deprecated)提示信息?
彻底移除PHP废弃提示的解决办法
1. 调整PHP代码的设置顺序和参数
你当前的代码顺序可能导致设置不生效,换一种写法,确保错误报告级别设置能覆盖全局:
<?php // 先关闭显示,再设置错误过滤规则,最后按需开启显示 ini_set('display_errors', '0'); // 排除废弃提示和严格模式提示,保留其他所有错误报告 error_reporting(E_ALL & ~E_DEPRECATED & ~E_STRICT); // 如果需要显示非废弃的错误,再打开display_errors ini_set('display_errors', '1');
高版本PHP里E_STRICT已经包含在E_ALL里,一起排除能避免额外的兼容提示。
2. 修正.htaccess的冲突配置
你现在的.htaccess强制开启了所有错误显示,可能会绕过PHP代码的设置。可以修改成这样:
php_flag display_startup_errors off php_flag display_errors on php_flag html_errors on php_flag log_errors on # 直接在.htaccess里设置错误报告级别,排除废弃错误 php_value error_reporting "E_ALL & ~E_DEPRECATED & ~E_STRICT"
如果服务器不支持这种字符串写法,就用数值组合:php_value error_reporting 24575(24575是E_ALL减去E_DEPRECATED和E_STRICT的数值)。
3. 直接改php.ini(有权限的话最彻底)
如果能编辑服务器的php.ini,直接改这几项,重启web服务后就永久生效:
display_errors = On error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT display_startup_errors = Off
4. 排查项目内的其他配置
有些框架或者全局初始化文件会重写error_reporting值,检查项目里的配置文件、启动脚本,看看有没有地方覆盖了这个设置,找到后改成上面的过滤规则就行。
内容的提问来源于stack exchange,提问作者peace_love
相关产品推荐
相关产品推荐

