Stream 函数
在线手册:中文  英文

stream_socket_shutdown

(PHP 5 >= 5.2.1)

stream_socket_shutdownShutdown a full-duplex connection

说明

bool stream_socket_shutdown ( resource $stream , int $how )

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

参数

stream

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

how

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

范例

Example #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($clientSTREAM_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)

参见


Stream 函数
在线手册:中文  英文

用户评论:

jgotti (2012-09-07 18:22:56)

Just a note to say that if you encounter problem closing some sockets using fclose in a multi client server, you should really give this one a try.
Spent a full day trying to resolve this issue using stream_socket_shutdown($clientStream,STREAM_SHUT_RDWR);
finally do the trick.

易百教程