Heim >PHP-Framework >Swoole >Was bedeutet ein schwerwiegender Swoole-Fehler?

Was bedeutet ein schwerwiegender Swoole-Fehler?

藏色散人
藏色散人Original
2020-04-09 10:41:323245Durchsuche

Was bedeutet ein schwerwiegender Swoole-Fehler?

swoole Was ist der fatale Fehler?

Schwerwiegende Fehler während der Serverlaufzeit erfassen

Sobald während der Serverlaufzeit ein schwerwiegender Fehler auftritt, wird auf die Clientverbindung nicht reagiert. Beispielsweise sollte ein Webserver bei einem schwerwiegenden Fehler eine HTTP 500-Fehlermeldung an den Client senden.

In PHP können Sie schwerwiegende Fehler über die Funktionen register_shutdown_function + error_get_last 2 erfassen und die Fehlerinformationen an die Clientverbindung senden. Das spezifische Codebeispiel lautet wie folgt:

register_shutdown_function('handleFatal');
function handleFatal()
{
    $error = error_get_last();
    switch ($error['type'] ?? null) {
        case E_ERROR :
        case E_PARSE :
        case E_CORE_ERROR :
        case E_COMPILE_ERROR :
            $message = $error['message'] . PHP_EOL;
            if (isset($_SERVER['REQUEST_URI'])) {
                $message .= '[QUERY] ' . $_SERVER['REQUEST_URI'];
            }
            // log or send:
            // error_log($message);
            // $server->send($fd, $message);
            break;
    }
}

Das obige ist der detaillierte Inhalt vonWas bedeutet ein schwerwiegender Swoole-Fehler?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn