如何在调试日志中只显示特定的错误类型?没有通知、警告等

时间:2020-08-26 作者:Viktor Borítás

我找不到正确的方法让它工作。我尝试了很多东西,比如把这个放在wp配置中。php

define(\'WP_DEBUG\', true);
define(\'WP_DEBUG_DISPLAY\', false);
define(\'WP_DEBUG_LOG\', \'wp-content/themes/mytheme/mylog.log\' ); // yeah, customized it a bit. It logs everything
ini_set(\'error_reporting\', E_ERROR );
还尝试在php中设置它。我管理的各种网站上的ini。不在托管主机上。或者至少在国际知名品牌上没有。这可能是服务器端或语法错误,或者甚至不可能是我想要的?

谢谢

1 个回复
SO网友:Viktor Borítás

此后,我这样做是为了实现php错误记录所需的错误级别设置:

在配置中。php

define(\'WP_DEBUG\', true);
define(\'WP_DEBUG_DISPLAY\', false);
define(\'WP_DEBUG_LOG\', \'wp-content/themes/mytheme/mylog.log\' ); // whatever custom destination you want
在函数中。php

function my_error_reporting(){
  //this overwrites the \'error_reporting\' value in the original php.ini file  

  error_reporting(E_ALL & ~E_DEPRECATED);
  // error_reporting(E_ALL & ~E_DEPRECATED & ~E_NOTICE); // 24567
  // error_reporting(E_ERROR); 
  //etc..
  // reference for possible options: https://www.php.net/manual/en/errorfunc.constants.php
}
add_action(\'init\',\'my_error_reporting\');

还可以通过以下方式检查当前错误报告:

function error_report_level_check(){
  // get the error-reporting level 
  $err_lev = error_reporting(); // if no parameter given.. 
  // ..it gets the currently ruling error reporting value as an integer code

  die(\'<pre>\'.print_r($err_lev,true).\'</pre>\');
}
add_action(\'wp_loaded\',\'error_report_level_check\');
此整数代码可在此列表中的“值”列中引用:https://www.php.net/manual/en/errorfunc.constants.php
(E\\u ALL-(E\\u已弃用+E\\u通知))等。。简单数学:)
通过这种方式,您可以检查运行时是否使用您自己的设置。

相关推荐

在wp-config-sample.php中找到回车控制字符(^M)

在Linux发行版中新安装WordPress时,wp-config-sample.php 包含任何其他字符中都找不到的回车控制字符。发行版中的php文件。跑步egrep -l $\'\\r\'\\$ *.php 在WP的基本目录中,将仅返回wp-config-sample.php我不担心消除控制字符,也不担心它会干扰安装操作(不会)。我只是想知道为什么wp-config-sample.php 是唯一存在此异常的文件。WP versions问题was reported 在版本4.6.15中。它仍然