函数名称: EventHttpRequest::sendReply()
函数用法: EventHttpRequest::sendReply() 函数用于向客户端发送 HTTP 响应。它必须在事件的回调函数内调用,以响应来自客户端的 HTTP 请求。
函数示例: 下面是一个简单的示例,演示如何使用 EventHttpRequest::sendReply() 函数来发送 HTTP 响应:
<?php
$base = new EventBase();
// 创建一个基于 TCP 的新 HTTP 服务器
$http = new EventHttp($base);
$http->setCallback(function($request, $response) {
// 接收到请求时的回调函数
// 设置 HTTP 响应的状态码和消息
$response->setHttpCode(200);
$response->setStatusMessage('OK');
// 设置响应的内容
$response->addHeader("Content-Type", "text/html");
$response->addBody("Hello world!");
// 发送响应给客户端
$response->sendReply();
});
// 绑定地址和端口
$http->bind("127.0.0.1", 8000);
// 开始事件循环
$base->loop();
?>
在上面的示例中,我们使用 EventHttp 类创建了一个基于 TCP 的 HTTP 服务器。在回调函数中,我们使用 EventHttpRequest 对象通过调用 sendReply()
方法发送 HTTP 响应。在这个简单的例子中,我们设置了响应的状态码为 200,消息为 "OK",设置了响应的内容类型为 "text/html",并添加了 "Hello world!" 作为响应体。最后,我们使用 sendReply()
方法发送响应给客户端。
需要注意的是,该函数只能在 HTTP 请求的回调函数中调用,且在调用该函数后,应停止对同一连接上的事件的进一步处理。