gpt4 book ai didi

php - CURL 和 PHP Geocoder 中的连接在 10000 毫秒后超时

转载 作者:可可西里 更新时间:2023-10-31 22:10:37 25 4
gpt4 key购买 nike

我有一个带有循环的脚本,我在其中执行 PHP 地理编码器函数。该循环有超过 1000 次迭代,整个过程需要一些时间。这是我的脚本:

for ($x = 0; $x < 1000; $x++) { 

////////////////////////////////////////////////////
// GECODE THE ADRESS AND GET THE COORDS
$curl = new \Ivory\HttpAdapter\CurlHttpAdapter();

$geocoder = new \Geocoder\Provider\BingMaps($curl,$bingApikey);
//$geocoder = new \Geocoder\Provider\MapQuest($curl,$mapQuestApikey);
//$geocoder = new \Geocoder\Provider\ArcGISOnline($curl);
//$geocoder = new \Geocoder\Provider\OpenStreetMap($curl);


$result = $geocoder->geocode($matchesAdressRightValues[$x][0]);

if (count($result)==0 || count($result)>1 ){
$bingSucUn = 'not_success';
array_push($arraySucUnsucBing,$bingSucUn);
}
else {
//echo ('result');
//echo (count($result));
//echo ('Endresult');
$bingSucUn = 'success';
array_push($arraySucUnsucBing,$bingSucUn);
}
//var_dump($result);
////////////////////////////////////////////////////
} // end for

问题是我得到一个错误:

(&quot;Connection timed out after 10000 milliseconds&quot;).

如何提高限​​制?我已将其添加到我的屏幕顶部,但它仅适用于 PHP,不适用于 curl 请求:

set_time_limit(0); 

通常,如果我使用的是纯 CURL 而没有集成到 PHP Geocoder 中,那么我会做类似的事情:

$ch = curl_init();
curl_setopt($ch,CURLOPT_TIMEOUT,1000);

但是我现在该怎么办呢?

最佳答案

免责声明

我是通过阅读文档构建的,我没有安装包也无法测试它。

在 ivory-http-adapter 中设置超时

官方方式,来自文档:

$configuration->setTimeout(30);

https://github.com/egeloen/ivory-http-adapter/blob/master/doc/configuration.md

代码

// new curl
$curl = new \Ivory\HttpAdapter\CurlHttpAdapter();

// get curl config
$conf = $curl->getConfiguration();

// set timeout
$conf->setTimeout(30);

// save config
$curl->setConfiguration($conf);

精简版

// curl + timeout (quick version)
$curl = new \Ivory\HttpAdapter\CurlHttpAdapter();
$curl->setConfiguration($curl->getConfiguration()->setTimeout(30));

关于php - CURL 和 PHP Geocoder 中的连接在 10000 毫秒后超时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31472800/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com