Php 如何调用此curl API请求以获得最高的';可能性';json字段名?

Php 如何调用此curl API请求以获得最高的';可能性';json字段名?,php,json,rest,curl,Php,Json,Rest,Curl,我正试图使用这个网站上的API将一些可能的名称规范化为“似然值”,以便提取名称 尝试了以下代码,但无法运行未定义的偏移量:2错误:$index_name=$mablue_names[$n]。此外,我还被提取名字的逻辑所困扰。有人能帮忙吗?谢谢 $possible_names = array("Jimmy Frank", "Wall Street"); // In this case Jimmy Frank should be the output person name if (count($

我正试图使用这个网站上的API将一些可能的名称规范化为“似然值”,以便提取名称

尝试了以下代码,但无法运行
未定义的偏移量:2错误:$index_name=$mablue_names[$n]。此外,我还被提取名字的逻辑所困扰。有人能帮忙吗?谢谢

$possible_names = array("Jimmy Frank", "Wall Street"); // In this case Jimmy Frank should be the output person name

if (count($possible_names) > 1) 
{
     for ($n = 0; $n <= count($possible_names); $n++) 
     {
         $index_name = $possible_names[$n];
         $ch = curl_init();
         curl_setopt($ch, CURLOPT_URL, "https://api.fullcontact.com/v2/name/normalizer.json?q=$index_name");
         curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
         curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "GET");

         $headers = array();
         $headers[] = "X-Fullcontact-Apikey: APIKEY";
         curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);

         $namenormalizer_result = curl_exec($ch);

         if (curl_errno($ch)) {
            echo 'Error:' . curl_error($ch);
         }
         else
         {
            $namejson_result = json_decode($namenormalizer_result, true);
            $namejson_array[] = $namejson_result['likelihood'];
         }
         curl_close ($ch);
     }    
}
可能的名称=数组(“吉米·弗兰克”、“华尔街”);//在本例中,Jimmy Frank应该是输出人员名称
如果(计数($可能的名称)>1)
{

对于($n=0;$n
$mablue\u names
是一个大小为2的数组。数组从0索引,因此您需要删除不存在的最后一个索引
2

for ($n = 0; $n <= count($possible_names) - 1; $n++) {

}

感谢您的回复哦,我的2号错误很糟糕,但是我写的curl错误了吗?因为当我尝试var_dump(namejson_结果)时,它返回NULL而不是一个值?是不是
$namejson_结果
不是空的?另外,用
$status=curl\u getinfo($ch,CURLINFO\u HTTP\u code)检查状态代码
如果您得到400或其他任何东西,我的$namejson_结果在我var_dump时为空且为NULL?我添加了$namejson_结果=json_解码($result);$status=curl_getinfo($ch,CURLINFO_HTTP_code);echo$status;返回int(400);它应该返回200有什么问题?请求格式不正确,问题是URL编码为
$ndex\u name
。使用:
curl\u setopt($ch,CURLOPT\u URL,”https://api.fullcontact.com/v2/name/normalizer.json?q=“.urlencode($index_name));
for ($n = 0; $n < count($possible_names); $n++) {

}
$namejson_result = json_decode($result);

echo "likelihood for $index_name on " . 
    $namejson_result->nameDetails->fullName . " : " . 
    $namejson_result->likelihood . "\n";