如何从Facebook ads API/PHP SDK读取受保护的数据
我得到一个从Facebook广告API调用返回的受保护对象 我正在和你打电话如何从Facebook ads API/PHP SDK读取受保护的数据,php,facebook,facebook-ads-api,Php,Facebook,Facebook Ads Api,我得到一个从Facebook广告API调用返回的受保护对象 我正在和你打电话 $campaigns = $account->getAdCampaigns($fields, $params); account类没有任何读取受保护数据的方法 FacebookAds\Cursor Object ( [response:protected] => FacebookAds\Http\Response Object ( [content:prot
$campaigns = $account->getAdCampaigns($fields, $params);
account类没有任何读取受保护数据的方法
FacebookAds\Cursor Object
(
[response:protected] => FacebookAds\Http\Response Object
(
[content:protected] => Array
(
[data] => Array
(
[0] => Array
(
[name] => <campaign_name>
[objective] => WEBSITE_CLICKS
[id] => <campaign_id>
)
)
)
FacebookAds\Cursor对象
(
[响应:受保护]=>FacebookAds\Http\response对象
(
[内容:受保护]=>阵列
(
[数据]=>阵列
(
[0]=>阵列
(
[名称]=>
[目标]=>网站点击次数
[id]=>
)
)
)
我是否需要创建此功能。SDK没有此功能似乎很奇怪。试试这个
use FacebookAds\Api;
Api::init($app_id, $app_secret, $access_token);
use FacebookAds\Object\AdAccount;
use FacebookAds\Object\Fields\CampaignFields;
$account = new AdAccount('act_'.$act_id);
$objects = $account->getCampaigns(array(
CampaignFields::NAME,
CampaignFields::ID,
CampaignFields::STATUS,
));
$objects->setUseImplicitFetch(true); // set this before loop
foreach ($objects as $object) {
if($object->{CampaignFields::STATUS }=='ACTIVE'){
$campaign_id= $object->{CampaignFields::ID};
$name= $object->{CampaignFields::NAME};
$status = $object->{CampaignFields::STATUS};
$values[] = array(
'campaign_id' => $campaign_id,
'name' => $name,
'status' => $status,
);
}
}
echo json_encode($values);
试试这个
use FacebookAds\Api;
Api::init($app_id, $app_secret, $access_token);
use FacebookAds\Object\AdAccount;
use FacebookAds\Object\Fields\CampaignFields;
$account = new AdAccount('act_'.$act_id);
$objects = $account->getCampaigns(array(
CampaignFields::NAME,
CampaignFields::ID,
CampaignFields::STATUS,
));
$objects->setUseImplicitFetch(true); // set this before loop
foreach ($objects as $object) {
if($object->{CampaignFields::STATUS }=='ACTIVE'){
$campaign_id= $object->{CampaignFields::ID};
$name= $object->{CampaignFields::NAME};
$status = $object->{CampaignFields::STATUS};
$values[] = array(
'campaign_id' => $campaign_id,
'name' => $name,
'status' => $status,
);
}
}
echo json_encode($values);
你想实现什么?我们没有考虑过你需要读这个。如果你试图在光标中读取对象,你可以使用GETObjutsSo(),它将给你所有的运动。在这个例子中,响应对象只用于知道如何遍历整个页面。@ PaulBain -试图访问运动。(ADU集团)数据(特别是ID、名称、目标、状态)我唯一能找到的方法是把每一个单独的都通过,这很快使我达到了我的限速。我真的很想找到其他的方法来做这件事。任何建议都是非常感谢的。谢谢。你想实现什么?我们没有考虑过你需要重新。广告。如果您试图读取光标中的对象,可以使用getObjects()命令,在这种情况下,它将为您提供所有活动。Response对象仅用于了解如何遍历整个页面集。@PaulBain-尝试访问活动(广告活动组)数据(特别是ID、名称、目标、状态)通过传递。我能找到的唯一其他方法是通过每个单独传递,这只会使我很快达到我的利率限制。我真的很难找到任何其他方法来做到这一点。任何建议都将不胜感激。谢谢。