如何使用新的PHP库设置年龄限制?

如何使用新的PHP库设置年龄限制?,php,facebook-php-sdk,Php,Facebook Php Sdk,我以前设定年龄限制的方法是 $userID = $facebook->require_login($required_permissions = 'email, publish_stream,offline_access'); $info = array('age' => '18+'); $success = $facebook->api_client->admin_setRestrictionInfo($info); 虽然旧方法很快就会被弃用,但我必须重写代码。我尝试

我以前设定年龄限制的方法是

$userID = $facebook->require_login($required_permissions = 'email, publish_stream,offline_access');
$info = array('age' => '18+');
$success = $facebook->api_client->admin_setRestrictionInfo($info);
虽然旧方法很快就会被弃用,但我必须重写代码。我尝试了所有方法,然后发现我应该这样调用api方法

$accessToken=$facebook->getAccessToken();
echo "<BR>access_token is: ".$accessToken;
$result = $facebook->api(array(
      'method' => 'admin.setRestrictionInfo',
      'restriction_str' => json_encode(array('age' => '18+')),
      "access_token" => $accessToken,
));

有解决办法吗?谢谢你的帮助。

我已经为此挣扎了一段时间,终于找到了答案,所以我想我会为你给出答案

那件
getAccessToken
事情很糟糕。显然,这正是SDK使用的令牌,而不一定是应用程序的令牌

$access_token = $app_id . "|" . $app_secret;

$facebook->api(array(
    "access_token"=>$access_token,
     "method"=>"admin.setRestrictionInfo",
     "restriction_str"=>"{'location':'CA'}"
));
显然,将
$app\u id
$app\u secret
设置为您的密码。应用程序访问令牌的结构是
[app id]|[app secret]

URL调用的结构是:

https://api.facebook.com/method/admin.setRestrictionInfo?access_token=[APP_ID]|[APP_SECRET]&format=json&restriction_str={%22type%22:%22alcohol%22} 
希望这有帮助

https://api.facebook.com/method/admin.setRestrictionInfo?access_token=[APP_ID]|[APP_SECRET]&format=json&restriction_str={%22type%22:%22alcohol%22}