当前位置: 首页> 函数类别大全> socket_shutdown

socket_shutdown

关闭套接字以接收,发送或两者兼而有之
名称:socket_shutdown
分类:套接字Sockets
所属语言:php
一句话介绍: 关闭一个已经打开的socket连接

函数名称:socket_shutdown()

函数描述:socket_shutdown()函数用于关闭一个已经打开的socket连接。

适用版本:该函数在PHP 4.1.0及以上版本可用。

语法:bool socket_shutdown ( resource $socket [, int $how = 2 ] )

参数:

  • $socket:必需,一个有效的socket资源,表示要关闭的socket连接。
  • $how:可选,指定关闭连接的方式。默认为2,表示关闭读和写。可选值有如下三个:
    • 0:关闭读。
    • 1:关闭写。
    • 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地址和端口号仅供参考,实际使用时需要根据具体情况进行修改。

同类函数
热门文章