计数器PHP中触发了多少错误



如果我必须调用不允许正确错误检查的第三方遗留函数,是否有一个全局计数器来显示PHP脚本已经触发了多少错误通知?

我想在我的脚本中检测是否有错误/警告/通知期间触发的函数调用,并在我的脚本中做出相应的反应。

作为一种解决方法,我会在函数调用之前和之后计算apache错误日志中的行数,但这不起作用:

<?php
$errorlogsize_before=filesize(DEBUGMODE_LOGFILE);
third_party_function();
$errorlogsize_after=filesize(DEBUGMODE_LOGFILE);
echo "Logsize before:".$errorlogsize_before."; Logsize after:".$errorlogsize_after."

它们显示相同的文件大小

我假设您的用例是对不允许正确错误检查的第三方遗留函数的调用。在这种情况下,您可以使用set_error_handler()临时更改错误处理程序,然后使用restore_error_handler()恢复它。其他替代方法,如error_get_last()丢弃除最后一个错误外的所有错误。

您可以使用set_error_handler函数并实现您自己的计数器

例如:我使用自定义错误处理程序发送UDP数据到statsd守护进程时,PHP错误发生。然后可以按类型和页面/文件绘制错误图

您可以创建自己的计数器:

<?php
$counter = 0;
$site = "://testsite.hjkh/"; //<== IncorrectSite
 fopen($site,"r")
 or die(errorCount + 1); //<==ErrorCount +1
 ?>

在脚本的末尾,回显ErrorCount。
看看这里:http://www.w3schools.com/php/func_misc_die.asp

相关内容

最新更新