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 →
本文档系腾讯云开发者社区成员共同维护,如有问题请联系 cloudcommunity@tencent.com