PHP
流 | Streams

stream_set_timeout

stream_set_timeout

(PHP 4 >= 4.3.0, PHP 5, PHP 7)

stream_set_timeout - 设置流上的超时时间

描述

bool stream_set_timeout ( resource $stream , int $seconds [, int $microseconds = 0 ] )

设置超时值stream,以和seconds和表示microseconds

当流超时时,由stream_get_meta_data()返回的数组的'timed_out'键被设置为TRUE,尽管没有生成错误/警告。

参数

stream

目标流。

seconds

要设置的超时秒数部分。

microseconds

要设置的超时的微秒部分。

返回值

成功时返回TRUE或失败时返回FALSE

Changelog

版本描述
4.3.0从PHP 4.3开始,这个函数可以(可能)适用于任何类型的流。在PHP 4.3中,基于套接字的流仍然是PHP内核支持的唯一类型,尽管来自其他扩展的流可能支持此功能。

示例

示例#1 stream_set_timeout()示例

<?php $fp = fsockopen("www.example.com", 80 if (!$fp) {     echo "Unable to open\n"; } else {     fwrite($fp, "GET / HTTP/1.0\r\n\r\n"     stream_set_timeout($fp, 2     $res = fread($fp, 2000     $info = stream_get_meta_data($fp     fclose($fp     if ($info['timed_out']) {         echo 'Connection timed out!';     } else {         echo $res;     } } ?>

注意

注意:此函数不适用于像stream_socket_recvfrom()这样的高级操作,而是使用带timeout参数的stream_select()。

此函数以前称为set_socket_timeout()和更高版本的socket_set_timeout(),但此用法已弃用。

另请参阅

  • fsockopen() - 打开Internet或Unix域套接字连接

  • fopen() - 打开文件或URL

← stream_set_read_buffer

stream_set_write_buffer →