socket_shutdown
关闭套接字以接收,发送或两者兼而有之
函数名称:socket_shutdown()
函数描述:socket_shutdown()函数用于关闭一个已经打开的socket连接。
适用版本:该函数在PHP 4.1.0及以上版本可用。
语法:bool socket_shutdown ( resource $socket [, int $how = 2 ] )
参数:
返回值:如果关闭成功,则返回true。如果发生错误,则返回false。
示例:
// 创建一个TCP socket连接
$socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
// 连接到远程服务器
$connect = socket_connect($socket, '127.0.0.1', 8080);
if (!$connect) {
echo "连接失败:" . socket_strerror(socket_last_error()) . "\n";
exit;
}
// 向服务器发送数据
$data = "Hello, server!";
socket_write($socket, $data, strlen($data));
// 关闭写入通道,仍然可以接收数据
socket_shutdown($socket, 1);
// 从服务器接收数据
$response = socket_read($socket, 1024);
echo "服务器响应:$response\n";
// 关闭socket连接
socket_close($socket);
上述示例中,首先创建了一个TCP socket连接,并连接到远程服务器。然后向服务器发送数据,并关闭写入通道,但仍然可以接收数据。最后从服务器接收数据,输出服务器的响应,并关闭socket连接。
请注意,示例中的IP地址和端口号仅供参考,实际使用时需要根据具体情况进行修改。