socket_shutdown
关闭套接字以接收,发送或两者兼而有之
PHP 5.0.0 及以上版本
socket_shutdown 函数用于关闭一个 socket 连接的读写功能。可以选择性地关闭读或写操作,或者同时关闭读写操作。
bool socket_shutdown(resource $socket, int $how = 2)
成功时返回 true,失败时返回 false。
以下是一个使用 socket_shutdown 函数的示例:
<?php // 创建一个 TCP socket $socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP); if ($socket === false) { echo "无法创建 socket: " . socket_strerror(socket_last_error()) . "\n"; } else { echo "socket 创建成功\n"; } <p>// 连接到服务器<br> $address = '127.0.0.1';<br> $port = 8080;<br> if (socket_connect($socket, $address, $port) === false) {<br> echo "无法连接到服务器: " . socket_strerror(socket_last_error($socket)) . "\n";<br> } else {<br> echo "连接成功\n";<br> }</p> <p>// 关闭写操作<br> if (socket_shutdown($socket, 0)) {<br> echo "写操作关闭成功\n";<br> } else {<br> echo "关闭写操作失败\n";<br> }</p> <p>// 关闭连接<br> socket_close($socket);<br> ?><br>
在此示例中,首先使用 socket_create 函数创建一个 TCP socket,并使用 socket_connect 函数连接到指定的地址和端口。然后通过调用 socket_shutdown 函数关闭 socket 的写操作 (how 参数设为 0)。最后,使用 socket_close 函数关闭 socket 连接。