函数名称:ZMQSocket::recv()
适用版本:ZMQ extension version >= 1.0.0
用法:该方法用于从ZMQ套接字接收消息。
语法:public string ZMQSocket::recv(int $flags = 0): string|false
参数:
- $flags(可选):用于设置接收消息时的标志。默认为0,表示无特殊标志。
返回值:如果成功接收到消息,则返回接收到的消息内容(字符串类型)。如果发生错误,则返回false。
示例:
// 创建一个ZMQ套接字
$context = new ZMQContext();
$socket = $context->getSocket(ZMQ::SOCKET_REQ);
$socket->connect("tcp://localhost:5555");
// 发送请求
$socket->send("Hello, server!");
// 接收服务器的响应
$response = $socket->recv();
if ($response !== false) {
echo "收到服务器的响应:{$response}" . PHP_EOL;
} else {
echo "接收消息失败!" . PHP_EOL;
}
// 关闭套接字和上下文
$socket->disconnect("tcp://localhost:5555");
$context->destroy();
在上面的示例中,我们首先创建了一个ZMQ套接字,并与服务器建立连接。然后,我们使用send()
方法向服务器发送了一条消息。接着,使用recv()
方法接收服务器的响应。如果接收成功,我们将打印出服务器的响应内容;否则,将打印出接收失败的提示信息。最后,我们断开套接字与服务器的连接,并销毁上下文对象。
请注意,示例中的IP地址和端口号仅作为演示,实际应根据实际情况进行修改。