ThinkChat🤖让你学习和工作更高效,注册即送10W Token,即刻开启你的AI之旅 广告
**socket\_recv**(resource`$socket`,string`&$buf`,int`$len`,int`$flags`) :int socket_recv — 从已连接的socket接收数据 **ocket_recv**(resource **$socket**,string **&$buf**,int **$len**,int **$flags**) :int 从`$socket`中接受长度为`$len`字节的数据,并保存在`$buf`中。**socket_recv()** 用于从已连接的socket中接收数据。除此之外,可以设定一个或多个 flags 来控制函数的具体行为 返回值:接收到的字节数。如果发生了错误,则返回**FALSE**错误码可使用[socket\_last\_error()](https://www.php.net/manual/zh/function.socket-last-error.php)接收。也可使用函数[socket\_strerror()](https://www.php.net/manual/zh/function.socket-strerror.php)来取得关于错误的文字描述 获取互联网服务协议对应的端口 配对:socket\_send、socket\_recv(分段循环读写) **可用的`flags`值** | Flag | 描述 | | --- | --- | | **`MSG_OOB`** | 处理超出边界的数据 | | **`MSG_PEEK`** | 从接受队列的起始位置接收数据,但不将他们从接受队列中移除。 | | **`MSG_WAITALL`** | 在接收到至少`len`字节的数据之前,造成一个阻塞,并暂停脚本运行(block)。但是, 如果接收到中断信号,或远程服务器断开连接,该函数将返回少于`len`字节的数据。 | | **`MSG_DONTWAIT`** | 如果制定了该flag,函数将不会造成阻塞,即使在全局设置中指定了阻塞设置。 |