提问人:Trevor 提问时间:2/7/2012 更新时间:4/2/2016 访问量:16472
如何在PHP中显示(回显/打印)当前设置的错误报告级别?
How can I display (echo/print) the currently set error reporting level in PHP?
问:
我正在处理一个相当大的项目(多个团队),所以我无法完全控制代码。不幸的是,error_reporting在整个代码中的许多地方都发生了变化。当我到达代码中的某个点时,我想查看当前设置的错误报告。有什么办法可以做到这一点吗?
答:
52赞
Cheery
2/7/2012
#1
http://www.php.net/error_reporting
int error_reporting ([ int $level ] )
返回旧的error_reporting级别,如果没有级别,则返回当前级别 参数。
您还可以使用链接提供的示例将级别(以整数形式返回)转换为字符串。例如:
function error_level_tostring($intval, $separator = ',')
{
$errorlevels = array(
E_ALL => 'E_ALL',
E_USER_DEPRECATED => 'E_USER_DEPRECATED',
E_DEPRECATED => 'E_DEPRECATED',
E_RECOVERABLE_ERROR => 'E_RECOVERABLE_ERROR',
E_STRICT => 'E_STRICT',
E_USER_NOTICE => 'E_USER_NOTICE',
E_USER_WARNING => 'E_USER_WARNING',
E_USER_ERROR => 'E_USER_ERROR',
E_COMPILE_WARNING => 'E_COMPILE_WARNING',
E_COMPILE_ERROR => 'E_COMPILE_ERROR',
E_CORE_WARNING => 'E_CORE_WARNING',
E_CORE_ERROR => 'E_CORE_ERROR',
E_NOTICE => 'E_NOTICE',
E_PARSE => 'E_PARSE',
E_WARNING => 'E_WARNING',
E_ERROR => 'E_ERROR');
$result = '';
foreach($errorlevels as $number => $name)
{
if (($intval & $number) == $number) {
$result .= ($result != '' ? $separator : '').$name; }
}
return $result;
}
将其用作echo error_level_tostring(error_reporting(), ',');
评论
0赞
chrisdillon
8/18/2016
明!谢谢你分享这个。
10赞
evan
2/7/2012
#2
不带参数使用。它将返回当前的错误级别。error_reporting()
评论