1

set_error_handler 回调函数接受 2 个强制参数和 3 个可选参数。其中之一是 $errno (第一个)。

它有什么用?它是 E_ALL 还是 E_NOTICE .... 的整数表示?

4

2 回答 2

3

set_error_handler()有关错误处理程序的文档中:

第一个参数errno包含引发的错误级别,作为一个整数。

它将是预定义的误差常数之一,例如E_USER_WARNING,E_NOTICE等。

于 2012-10-02T20:17:26.280 回答
2

$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;
    }
于 2012-10-02T20:19:17.420 回答