Shutdown a full-duplex connection

# stream_socket_shutdown

(PHP 5 >= 5.2.1, PHP 7, PHP 8)

stream_socket_shutdown — Shutdown a full-duplex connection

### 说明

function stream_socket_shutdown(resource `$stream`, int `$mode`): bool

Shutdowns (partially or not) a full-duplex connection.

> 注意:

> The associated buffer, or buffers, may or may not be emptied.

### 参数

`stream`

  An open stream (opened with stream_socket_client(), for example)

`mode`

  One of the following constants: `STREAM_SHUT_RD` (disable further receptions), `STREAM_SHUT_WR` (disable further transmissions) or `STREAM_SHUT_RDWR` (disable further receptions and transmissions).

### 返回值

成功时返回 `true`， 或者在失败时返回 `false`。

### 示例

示例 #1 A stream_socket_shutdown() example

    <?php

    $server = stream_socket_server('tcp://127.0.0.1:1337');
    $client = stream_socket_client('tcp://127.0.0.1:1337');

    var_dump(fputs($client, "hello"));

    stream_socket_shutdown($client, STREAM_SHUT_WR);
    var_dump(fputs($client, "hello")); // doesn't work now

    ?>

以上示例的输出类似于：

    int(5)

    Notice: fputs(): send of 5 bytes failed with errno=32 Broken pipe in test.php on line 9
    int(0)

### 参见

- fclose() - 关闭一个已打开的文件指针

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open