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 致命错误是什么意思的详细内容。