Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/wix/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Facebook graph api 如何通过ads insights api调用从facebook中的游标数组中获取数据_Facebook Graph Api_Facebook Php Sdk_Facebook Ads Api_Facebook Marketing Api - Fatal编程技术网

Facebook graph api 如何通过ads insights api调用从facebook中的游标数组中获取数据

Facebook graph api 如何通过ads insights api调用从facebook中的游标数组中获取数据,facebook-graph-api,facebook-php-sdk,facebook-ads-api,facebook-marketing-api,Facebook Graph Api,Facebook Php Sdk,Facebook Ads Api,Facebook Marketing Api,调用getInsights()方法时,它给出了一个对象。所以我想从中访问一些数据。 下面是api调用 $account->getInsights($fields, $params); echo '<pre>';print_r($resultArr);die; $account->getInsights($fields,$params); 回声';打印(Resultar);死亡 它将产生类似的结果 FacebookAds\Cursor对象 ( [响应:受保护]=>Facebo

调用getInsights()方法时,它给出了一个对象。所以我想从中访问一些数据。 下面是api调用

$account->getInsights($fields, $params);
echo '<pre>';print_r($resultArr);die;
$account->getInsights($fields,$params);
回声';打印(Resultar);死亡
它将产生类似的结果

FacebookAds\Cursor对象 ( [响应:受保护]=>FacebookAds\Http\response对象 ( [请求:受保护]=>FacebookAds\Http\request对象 ( [客户端:受保护]=>FacebookAds\Http\client对象 ( [requestPrototype:protected]=>FacebookAds\Http\Request对象 (


提前感谢。

以下操作应该可以:

foreach ($account->getInsights($fields, $params) as $obj) {
    $resultArr = $obj->getData();
    echo '<pre>';
    print_r($resultArr);
}
die;

您将确定您正在循环所有结果。

我使用这段代码,它对我有效,我希望对您有效

print_r($res['data']);

我不确定我的方法是否与Angelina的不同,因为它是SDK的一个不同领域,或者是因为它在她的回答后已被更改,但下面是适用于我的代码,希望对其他人有用:

调用getArrayCopy会返回一个抽象对象数组,然后调用getData会返回一个对象数组。请尝试:

然后去做一些平常的事情:


游标用于分页;游标对象本身不应包含任何实际数据AFAIK。
Cursor::setDefaultUseImplicitFetch(true);
    $adset_insights = $ad_account->getInsights($fields,$params_c); 
    do {
            $adset_insights->fetchAfter();
    } while ($adset_insights->getNext());
    $adsets = $adset_insights->getArrayCopy(true); 
        $location_objects = $cursor->getArrayCopy();
        $locations = array();

        foreach($location_objects as $loc)
        {
            $locations[] = $loc->getData();
        }
        return $locations;
$insights = $account->getInsights($fields, $params);
$res = $insights->getResponse()->getContent(); 
print_r($res['data']);