Закрывает полнодуплексное соединение

# stream_socket_shutdown

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

stream_socket_shutdown — Закрывает полнодуплексное соединение

### Описание

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

Функция закрывает (частично или нет) полнодуплексное соединение.

> Замечание:

> Ассоциированные буферы, или буферы, могут быть закрыты, а могут и нет.

### Список параметров

`stream`

  Открытый поток (например тот, который открыли функцией stream_socket_client()).

`mode`

  Константа из следующего списка: `STREAM_SHUT_RD` (отключает последующее получение данных), `STREAM_SHUT_WR` (отключает последующую передачу данных) или `STREAM_SHUT_RDWR` (отключает последующие получение и передачу данных).

### Возвращаемые значения

Функция возвращает `true`, если выполнилась успешно, или `false`, если возникла ошибка.

### Примеры

Пример #1 Пример использования функции stream_socket_shutdown()

    <?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, "привет"));

    stream_socket_shutdown($client, STREAM_SHUT_WR);
    var_dump(fputs($client, "привет")); // Не работает сейчас

    ?>

Вывод приведённого примера будет похож на:

    int(5)

    Notice: fputs(): send of 6 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