socket_get_status
stream_get_meta_data的别名 - 从封装协议文件指针中取得报头/元数据
PHP 4 及以上版本
socket_get_status() 函数用于获取一个 socket 流的当前状态信息,返回一个数组,描述流的可读写状态、EOF(文件结束符)等信息,常用于流式套接字的状态检测。
array socket_get_status(resource $stream)
返回一个关联数组,包含以下键:
以下示例展示了如何使用 socket_get_status() 函数获取一个 socket 流的状态信息:
$socket = stream_socket_client("tcp://www.example.com:80", $errno, $errstr, 30); if (!$socket) { echo "连接失败: $errstr ($errno)\n"; } else { fwrite($socket, "GET / HTTP/1.0\r\nHost: www.example.com\r\n\r\n"); $status = socket_get_status($socket); print_r($status); fclose($socket); }
代码中先建立一个到指定服务器的 TCP 连接,连接成功后向服务器发送一个简单的 HTTP 请求,然后调用 socket_get_status() 获取当前流的状态信息并打印,最后关闭流资源。