我有一些PHP代码。当我运行它时,会出现一条警告消息。
如何删除/屏蔽/忽略这些警告消息?
我有一些PHP代码。当我运行它时,会出现一条警告消息。
如何删除/屏蔽/忽略这些警告消息?
当前回答
如果您不想显示警告和错误,请使用
// Turn off all error reporting
error_reporting(0);
错误报告- PHP手册
其他回答
我认为更好的解决方案是配置。htaccess,这样你就不必改变应用程序的代码。下面是Apache2的指令
php_flag display_startup_errors off
php_flag display_errors off
php_flag html_errors off
php_value docref_root 0
php_value docref_ext 0
您确实应该修复引起警告的原因,但是可以使用error_reporting()控制错误的可见性。要跳过警告信息,你可以使用如下命令:
error_reporting(E_ERROR | E_PARSE);
禁用警告,同时启用所有其他错误报告:
error_reporting(E_ALL ^ E_WARNING);
我并没有完全回答这个问题,但我认为在某些情况下这是一个更好的妥协:
由于第三方库中的printf()语句,我收到了警告消息。我很清楚原因是什么——在第三方修复他们的代码时临时的解决办法。我同意警告不应该被抑制,但是我不能在屏幕上弹出警告消息的情况下向客户演示我的工作。我的解决方案:
printf('<div style="display:none">');
...Third-party stuff here...
printf('</div>');
警告仍然在页面源代码中作为提醒,但对客户端不可见。
我在我的php.ini中这样做:
error_reporting = E_ALL & ~E_WARNING & ~E_NOTICE & ~E_STRICT & ~E_DEPRECATED
这只记录致命错误,没有警告。