PHP Bing Search API返回一个空数组

时间:2016-05-31 22:45:28

标签: php bing

我正在使用bing搜索API来查找网址,例如公司的叽叽喳喳声。经过一些使用后,无论我如何更改查询或格式化,它都会开始返回:

array(1) {
   ["d"]=>
     array(1) {
       ["results"]=>
         array(0) {
       }
     }
   }

我还没有改变获取请求的代码。以下是我使用的查询:

Capital University%20twitter

这是我用来调用API的代码:

    $key = 'mykey';
    $client = new BingClient($key,'json');
    $result = $client->get('Web',['Query' => $query]);
    return json_decode($result,true );

我不受价格限制。也许其他人之前遇到过这个问题?

编辑:它现在返回结果(我没有更改代码),但唯一的结果就是这个堆栈溢出帖子。第一个字符串是查询,第一个对象是它的结果。

string(28) "Capital University%20twitter"
object(stdClass)#1008 (1) {
  ["d"]=>
  object(stdClass)#1013 (1) {
    ["results"]=>
    array(1) {
      [0]=>
      object(stdClass)#1014 (6) {
        ["__metadata"]=>
        object(stdClass)#1015 (2) {
          ["uri"]=>
          string(111)"https://api.datamarket.azure.com/Data.ashx/Bing/Search/v1/Web?Query='Capital University twitter'&$skip=0&$top=1"
          ["type"]=>
          string(9) "WebResult"
        }
        ["ID"]=>
        string(36) "4d5c4ee7-e5f8-44ac-90b3-a12c321e6033"
        ["Title"]=>
        string(59) "PHP Bing Search API returns an empty array - Stack Overflow"
        ["Description"]=>
        string(161) "Capital University%20twitter. And this is the code I use to call the API: $key = 'mykey'; $client = new BingClient($key,'json'); $result = $client->get ('Web ..."
        ["DisplayUrl"]=>
        string(67) "stackoverflow.com/questions/37556866/php-bing-search-api-returns..."
        ["Url"]=>
        string(86) "http://stackoverflow.com/questions/37556866/php-bing-search-api-returns-an-empty-array"
      }
    }
  }
}

string(29) "Capital University%20facebook"
object(stdClass)#1008 (1) {
  ["d"]=>
  object(stdClass)#1016 (1) {
    ["results"]=>
    array(0) {
    }
  }
}

1 个答案:

答案 0 :(得分:0)

我明白了!我错误地编码了查询,这就是它链接到我的堆栈帖子的原因。

我使用%20+作为空格。但是,我的客户已经处理过了。最好只使用作为空间。