PHP Foursquare API将Null返回到场地/搜索

时间:2014-10-06 20:08:16

标签: php mysql foursquare

我正在尝试使用光盘上的知识(lat,long)MySQL数据库记录从foursquare导出类别。

当我向foursquare请求时,我只收到NULL而不是预期的数据。

按照代码:

        $id = $_SESSION["id"];
        $total = $resultA["place"];
        $lat = addslashes($resultA["place_lat"]);
        $lng = addslashes($resultA["place_lng"]);
        $name = addslashes($resultA["place_name"]);

            $client_key = 'client_id';
            $client_secret = 'client_secret';

            $curlhandle = curl_init();
            curl_setopt($curlhandle, CURLOPT_URL, "https://api.foursquare.com/v2/venues/search
                            ?client_id=client_id
                            &client_secret=client_secret
                            &v=20141006
                            &ll=$lat,$lng");
            curl_setopt($curlhandle, CURLOPT_RETURNTRANSFER, 1);
            **$response = curl_exec($curlhandle)**;
            curl_close($curlhandle);
            $venues = json_decode($response);

除了这个问题,当我在我的broswer上运行代码时,我遇到了问题:“致命错误:在{{1号线上的C:\ xampp \ htdocs \ tcc \ recomendacao \ analisarUser.php中超过30秒的最大执行时间}}“

有人知道可能的情况吗?非常感谢。

1 个答案:

答案 0 :(得分:0)

看起来你的卷曲太慢而无法执行代码。

尝试最大化curl和put的执行时间 这在脚本的开头。

  // if you set it to 0 , it mean the limit to
  // infinite, maximum available limit.
    ini_set('MAX_EXECUTION_TIME', 0);

   //Or give it a limit on your wish
   ini_set('MAX_EXECUTION_TIME', 500);

希望可以帮到你

您可以进一步尝试将try catch块添加到您的代码中,以便抛出异常。

$id = $_SESSION["id"];
$total = $resultA["place"];
$lat = addslashes($resultA["place_lat"]);
$lng = addslashes($resultA["place_lng"]);
$name = addslashes($resultA["place_name"]);

$client_key = 'client_id';
$client_secret = 'client_secret';

try {


        $client_key = 'client_id';
        $client_secret = 'client_secret';

        $curlhandle = curl_init();
        curl_setopt($curlhandle, CURLOPT_URL, "https://api.foursquare.com/v2/venues/search
                        ?client_id=client_id
                        &client_secret=client_secret
                        &v=20141006
                        &ll=$lat,$lng");
        curl_setopt($curlhandle, CURLOPT_RETURNTRANSFER, 1);
    $response = curl_exec($curlhandle);
    if($response !== FALSE):
    curl_close($curlhandle);
    $venues = json_decode($response);
    endif;

}
catch(Exception $ex){
    throw new Exception("Invalid URL",0,$ex);
}