[英]Facebook Ads API PHP: How to get the adaccounts of Custom Audience
任何人都可以告訴我獲取共享一個自定義受眾群體的帳戶ID的正確方法,即adaccounts
使用API v2.4在PHP中查詢
$account = new AdAccount($accountId);
$fields = array(
CustomAudienceFields::ID,
CustomAudienceFields::NAME,
CustomAudienceFields::SUBTYPE,
CustomAudienceFields::ACCOUNT_ID,
CustomAudienceFields::ADACCOUNTS,
);
$params = array('filters'=>array(
array(
'field'=>'subtype',
'type'=>'in',
'value'=>['WEBSITE','CUSTOM'],
),
),);
$CustomAudience = $account->getCustomAudiences($fields,$params);
結果
[adaccounts] => Array ( [data] => Array ( [0] => 9.1432423423488E+14 [1] => 8.9623423402405E+14 [2] => 8.71252342345443E+14 [3] => 8.832242342342387E+14 [4] => 8.92234234079338E+14 ) )
注意:我自己在CustomAudienceFileds.php中添加了此屬性:
“ CustomAudienceFields :: ADACCOUNTS”
問題
所有值都是浮動值,或者我不知道這些值實際上是什么。 我將這些值轉換為int,但它們似乎是負數和錯誤的帳戶ID。
請讓我知道我錯了什么地方。
當我查詢以下內容時,它在Graph Api Explorer工具中工作正常:
在Graph Api Explorer v2.4中進行查詢:
act_34234234234344 / customaudiences?fields = adaccounts
結果:
“ adaccounts”:{“ data”:[534534534534555,564563453454534,345345345345345,234234234234234]}
實際上,作為響應返回的值是以科學計數法表示的,因此只需遍歷每個值(adaccountid),然后使用spinrtf將其轉換為整數,如下所示:
$i =0;
foreach ($CustomAudience as $audience) {
foreach($audience->adaccounts['data'] as $accountid)
{
if($i ==0)
$info["adaccountsIds"] = sprintf('%.0F',$accountid);
else
$info["adaccountsIds"] .= ','.sprintf('%.0F',$accountid);
$i++;
}
}
我不會說它的答案,它可以解決。 歡迎更多答案
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.