How to set PHP not to check undefind index for $_GET when E_NOTICE is on?

前端 未结 3 1047
轻奢々
轻奢々 2021-01-26 10:53

When E_NOTICE is set to on, PHP will report undefined index for arrays. I want to suppress this error for $_GET only. Is there any way to do that other than prepend

3条回答
  •  生来不讨喜
    2021-01-26 11:19

    If you don't want to modify all the $_GET references in your code, you could create your own error handler to PHP, by using set_error_handler function

    Example (completely untested, but shows the idea):

    function myErrHandler ($errno, $errstr, $errfile, $errline) {
        if(strstr("GET", $errstr)) {
            // suppress message
            return true;
        }
    
        // otherwise, continue with PHP internal error handler
        return false;
    }
    
    set_error_handler("myErrHandler", E_NOTICE);
    

提交回复
热议问题