什么是$ errno集合
set_error_handler回调函数接受2个强制参数和3个可选参数。 其中之一是$ errno(第一个)。
它有什么用途? 是E_ALL或E_NOTICE的整数表示吗?
$ errno包含所引发错误的级别,作为整数。
我认为这个例子会说清楚(不是我的代码):
switch ($errno) {
case E_USER_ERROR:
echo "<b>My ERROR</b> [$errno] $errstr<br />n";
echo " Fatal error on line $errline in file $errfile";
echo ", PHP " . PHP_VERSION . " (" . PHP_OS . ")<br />n";
echo "Aborting...<br />n";
exit(1);
break;
case E_USER_WARNING:
echo "<b>My WARNING</b> [$errno] $errstr<br />n";
break;
case E_USER_NOTICE:
echo "<b>My NOTICE</b> [$errno] $errstr<br />n";
break;
default:
echo "Unknown error type: [$errno] $errstr<br />n";
break;
}
从关于错误处理程序的set_error_handler()
的文档中:
第一个参数errno包含所引发错误的级别,为整数。
它将是预定义的错误常量之一,例如E_USER_WARNING
, E_NOTICE
等。