Can';t在OpenCart(PHP)中禁用错误报告
我似乎无法在PHP中禁用错误报告-我已经尝试了所有方法,但仍然显示“注意”错误 我的php.iniCan';t在OpenCart(PHP)中禁用错误报告,php,opencart,error-reporting,ini-set,Php,Opencart,Error Reporting,Ini Set,我似乎无法在PHP中禁用错误报告-我已经尝试了所有方法,但仍然显示“注意”错误 我的php.ini display_errors = Off; error_reporting = 0; 我的.htaccess php_value error_reporting 0 而且我的剧本 ini_set('display_errors', 'Off'); ini_set('log_errors', 1); ini_set('error_reporting', 0); ini_set('display_
display_errors = Off;
error_reporting = 0;
我的.htaccess
php_value error_reporting 0
而且我的剧本
ini_set('display_errors', 'Off');
ini_set('log_errors', 1);
ini_set('error_reporting', 0);
ini_set('display_startup_errors', 'Off');
php_info();
echo $my_undefined_var;
php_info()输出确认display_errors和error_reporting确实为off和0,但我仍然收到通知
注意:未定义变量:my/site/path/index.php中的my_Undefined_var?blahblah
注意这是一个OpenCart网站(我的更改在管理部分)。我尝试过在index.php的同一目录中创建一个测试php脚本,效果很好
是否还有其他内容可以覆盖错误报告(0)
我对整个站点进行了grep,以查找并禁用所有提到的错误报告和显示错误,但没有效果。OpenCart使用
set\u error\u handler()
函数,该函数使其覆盖错误报告(0)
删除此选项修复了我的问题。您只需使用
ini_set('display_errors', 0);
在system/startup.php上,@colmde已经指出OpenCart使用自定义错误处理程序 您可以通过以下方式关闭错误显示,而无需任何代码编辑(尤其是OpenCart核心文件):
Admin->System->Settings->[编辑配置的存储]->服务器->显示错误
[编辑]
您可以通过对OpenCart数据库运行以下查询来执行相同的操作:
update setting set `value`= 1 where `key` = 'config_error_display'
OpenCart仪表板中有一个设置,允许您打开(或关闭)错误报告和日志记录
A.日志错误-根据需要进行设置
B显示错误-将此设置为“否”
$this->config->set('config_error_display', 0);
$this->processAction(); // it throws ugly warning
我已经在模块的控制器中进行了测试。
只需在代码之前关闭显示错误。
它只影响当前会话(甚至可能影响当前页面)。
它不会影响数据库 对我有帮助:
//错误报告(E_全部)
在文件startup.php中,将log_errors设置为1有什么意义?你想记录什么?除此之外,这个标题让我自然发抖。我真的不想记录任何东西。。。我在另一个论坛上读到,要禁用错误显示,您可能必须启用错误日志记录,这对我来说没有意义,但我正处于尝试任何事情的阶段。但是,如果我把它拿出来,没有什么区别。我想做相反的事情:打开错误报告(结果很难,但这很管用!)对我来说有效:
UPDATE'TABLENAME.'oc\u setting'SET'value'='0',其中'oc\u setting.'setting\u id'=1057
完全有效,原因是您选择在设置期间为OpenCart表使用oc\u
前缀,因此setting
变成了oc\u setting
。