我试图从另一个网站提取少量数据,但我发现它是超时。我已经设置了一些编码条款来尝试强制我的代码从类似数据中获取数据,如果试图从第一个中获取数据需要很长时间。stream_context_create中的超时何时不起作用?
$ctx = stream_context_create(array('http' => array('timeout' => 2)));
$geo = json_decode(file_get_contents($url, 0, $ctx), true);
原则上这应该在2秒后超时,然后我会知道它的duff并去第二个URL。但它不起作用,并试图获得它15秒。我试过用$
ini_set('default_socket_timeout', 2);
但是这也行不通。任何人都可以请建议别的东西,我可以尝试?
您使用的是什么版本的PHP?由于超时仅在版本5.2.1中增加了http://php.net/manual/en/context.http.php#refsect1-context.http-changelog – 2014-10-05 00:06:50
版本是5.4.33 – user2757062 2014-10-05 01:44:48