牛牛在线工具

stream_set_timeout()

收录 8868 个 PHP 函数,含用途说明与用法示例。

stream_set_timeout()

设置指定流的超时时间

函数名称:stream_set_timeout() 适用版本:PHP 4, PHP 5, PHP 7 用法:stream_set_timeout(resource $stream, int $seconds, int $microseconds = 0): bool 函数描述:stream_set_timeout() 用于设置指定流的超时时间。超时时间指定了在读取或写入流时等待数据的最长时间。如果在超时时间内没有读取或写入任何数据,函数将返回 false。 参数: $stream:要设置超时时间的流资源。 $seconds:超时时间的秒数部分。如果设置为 0,则表示没有超时限制。 $microseconds:超时时间的微秒数部分。默认值为 0。 返回值:如果成功设置超时时间,则返回 true;否则返回 false。 示例: // 创建一个 TCP 客户端连接 $socket = stream_socket_client('tcp://www.example.com:80', $errno, $errstr, 30); if (!$socket) { die("连接失败: $errstr ($errno)"); } // 设置超时时间为5秒 if (stream_set_timeout($socket, 5) === false) { die("设置超时时间失败"); } // 发送HTTP请求 $request = "GET / HTTP/1.1\r\n"; $request .= "Host: www.example.com\r\n"; $request .= "Connection: close\r\n\r\n"; fwrite($socket, $request); // 读取响应 $response = ''; while (!feof($socket)) { $response .= fread($socket, 8192); } // 关闭连接 fclose($socket); echo $response; 在上面的示例中,我们首先使用 stream_socket_client() 函数创建了一个 TCP 客户端连接。然后,使用 stream_set_timeout() 函数将超时时间设置为 5 秒。接下来,我们发送了一个 HTTP 请求并读取了服务器的响应。最后,关闭了连接并打印出响应内容。 请注意,设置超时时间仅适用于读取和写入操作,并不会影响连接的建立或关闭过程。