PHP读取捕获流超时



我使用PHP函数read从以

打开的流中读取数据
$fh=fopen('http://.....');

i设置流的超时时间

socket_set_timeout($fh,10);

如果超时发生在读取执行期间,那么我可以知道这一点吗?

$contents = fread($fh, 1024);

如果超时发生,那么$contents是否等于空字符串或FALSE ?如何知道超时发生了?有办法吗?

根据该函数的文档页:

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

因此没有生成错误/警告,但是检查stream_get_meta_data的输出将给您一个线索。

fread()将在超时时返回''(空字符串),不像socket_read()返回false

相关内容

  • 没有找到相关文章

最新更新