首頁 > php框架 > Swoole > swoole 致命錯誤是什麼意思

swoole 致命錯誤是什麼意思

藏色散人
發布: 2020-04-09 10:41:32
原創
3251 人瀏覽過

swoole 致命錯誤是什麼意思

swoole# 致命錯誤是什麼?

捕獲Server運行期致命錯誤

Server運行期一旦發生致命錯誤,那麼客戶端連線將無法回應。如Web伺服器,如果有致命錯誤應向客戶端傳送Http 500 錯誤訊息。

在PHP中可以透過register_shutdown_function error_get_last 2個函數來捕獲致命錯誤,並將錯誤訊息傳送給客戶端連線。具體程式碼範例如下:

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;
    }
}
登入後複製

以上是swoole 致命錯誤是什麼意思的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板