array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'pt_BR', ), 'this' => array ( 0 => 'function.stream-socket-shutdown.php', 1 => 'stream_socket_shutdown', ), 'up' => array ( 0 => 'ref.stream.php', 1 => 'Funções de Fluxo', ), 'prev' => array ( 0 => 'function.stream-socket-server.php', 1 => 'stream_socket_server', ), 'next' => array ( 0 => 'function.stream-supports-lock.php', 1 => 'stream_supports_lock', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'pt_BR', 'path' => 'reference/stream/functions/stream-socket-shutdown.xml', ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); ?>
(PHP 5 >= 5.2.1, PHP 7, PHP 8)
stream_socket_shutdown — Fecha uma conexão full-duplex
Fecha uma conexão full-duplex (parcialmente ou não).
Nota:
O buffer ou buffers associados podem ou não ser esvaziados.
stream
Um fluxo aberto (aberto com stream_socket_client(), por exemplo)
mode
Uma das constantes a seguir: STREAM_SHUT_RD
(desabilita recepções adicionais), STREAM_SHUT_WR
(desabilita transmissões adicionais) ou
STREAM_SHUT_RDWR
(desabilita transmissões e recepções
adicionais).
Exemplo #1 Um exemplo de 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, "olá!!"));
stream_socket_shutdown($client, STREAM_SHUT_WR);
var_dump(fputs($client, "olá!!")); // agora não funciona
?>
O exemplo acima produzirá algo semelhante a:
int(5) Notice: fputs(): send of 5 bytes failed with errno=32 Broken pipe in test.php on line 9 int(0)