I have the following snippet of php code
if($fp = fopen($url, 'r')) {
stream_set_timeout($fp, 1);
stream_set_blocking($fp, 0);
}
$info = stream_get_meta_data($fp);
I'd like the request to timeout after 1 second. If I put a sleep(20)
in my $url
that I'm reading, it just waits the whole 20 seconds and never times out. Is there a better way to do timeouts with fopen
?
If I use ini_set('default_socket_timeout',2)
above that code it times out properly but $info
then becomes null so ideally I'd like to use the stream functions.