你如何在PHP中获得多个错误处理程序?

Zer*_*rbu 6 php function handler

我试过这个:

    set_error_handler('ReportError', E_NOTICE | E_USER_NOTICE);
    set_error_handler('ErrorHandler', E_ALL & ~(E_NOTICE | E_USER_NOTICE));
Run Code Online (Sandbox Code Playgroud)

但只有第二个有效.如何针对不同类型的错误使用不同的错误处理程序?

小智 5

为什么不在处理程序中有一个错误处理程序并按错误类型过滤并从那里调用不同的函数?制作一个GenericErrorHandler()并在其中执行此操作:

switch($errno){
   case E_USER_ERROR: UserErrorHandler(...); break;
}
Run Code Online (Sandbox Code Playgroud)