Php &引用;获取卷曲错误:名称查找超时超出数组“;对于使用wordpress的geonames(findNearbyPostalCodes)api

Php &引用;获取卷曲错误:名称查找超时超出数组“;对于使用wordpress的geonames(findNearbyPostalCodes)api,php,api,curl,geonames,Php,Api,Curl,Geonames,我需要用geonames api接近postalcodes。我正在使用curl for api响应。现在,有时我从api获得响应,有时得到curl错误:名称查找超时数组 function getResponse() { $xml = get_data('http://api.geonames.org/findNearbyPostalCodes?postalcode=73301&maxRows=100&username=demo'); $all_zip_code

我需要用geonames api接近postalcodes。我正在使用curl for api响应。现在,有时我从api获得响应,有时得到curl错误:名称查找超时数组

function getResponse()
{

    $xml = get_data('http://api.geonames.org/findNearbyPostalCodes?postalcode=73301&maxRows=100&username=demo');

    $all_zip_codes = array_keys($xml);

    print_r($all_zip_codes);}
/*用于从api获取响应的函数*/

function get_data($url) {

     if(!function_exists('curl_init')) {

    die ("Curl PHP package not installed\n");
    }   

    $ch=curl_init();
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 5);
    curl_setopt($ch, CURLOPT_TIMEOUT, 15);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
    $response = curl_exec($ch);

    if(!curl_errno($ch))
    {
        $info = curl_getinfo($ch);

        echo '<br/> Took ' . $info['total_time'] . ' seconds to send a request to ' . $info['url'];
    }
    else
    {
        echo 'Curl error: ' . curl_error($ch);

    }

    $refineArray = array();
    $parseArray = json_decode(json_encode((array)simplexml_load_string($response)),1);

    foreach($parseArray['code'] as $value) {
        $refineArray[$value['postalcode']] = $value;
    }

    return($refineArray);
}
函数获取数据($url){
如果(!function_存在('curl_init')){
die(“未安装Curl PHP包\n”);
}   
$ch=curl_init();
curl_setopt($ch,CURLOPT_URL,$URL);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch,CURLOPT_CONNECTTIMEOUT,5);
curl_setopt($ch,CURLOPT_超时,15);
curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,false);
$response=curl\u exec($ch);
如果(!curl_errno($ch))
{
$info=curl\u getinfo($ch);
echo“
花了“$info['total_time']”秒向“$info['url]”发送请求; } 其他的 { 回显“旋度误差:”。旋度误差($ch); } $refineArray=array(); $parseArray=json_解码(json_编码((数组)simplexml_加载_字符串($response)),1); foreach($parseArray['code']作为$value){ $refineArray[$value['postalcode']]=$value; } 返回($数组); }