Maison >cadre php >Swoole >Que signifie l'erreur fatale Swoole ?

Que signifie l'erreur fatale Swoole ?

藏色散人
藏色散人original
2020-04-09 10:41:323257parcourir

Que signifie l'erreur fatale Swoole ?

swoole Quelle est l'erreur fatale ?

Capturez les erreurs fatales pendant l'exécution du serveur

Une fois qu'une erreur fatale se produit pendant l'exécution du serveur, la connexion client ne recevra pas de réponse. Par exemple, un serveur Web doit envoyer un message d'erreur HTTP 500 au client en cas d'erreur fatale.

En PHP, vous pouvez capturer les erreurs fatales via les fonctions register_shutdown_function + error_get_last 2 et envoyer les informations d'erreur à la connexion client. L'exemple de code spécifique est le suivant :

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;
    }
}

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn