2015-06-23 282 views
-1
try { 

        $response = (new FacebookRequest($session, 'GET', '/me/permissions'))->execute(); 
        $object = $response->getGraphObject() -> asArray(); 
        echo '<pre>'; 
        print_r($object); 
        echo '</pre>'; 

        //problem lies over here 
        for($i = 0 ; $i <count($object['data']); $i++){ 
         echo "<br>" . $object['data'][$i] -> permission; 
        } 
       } 
       catch (FacebookRequestException $ex) { 
        echo $ex->getMessage(); 
        } catch (\Exception $ex) { 
        echo $ex->getMessage(); 
       } 

print_r($ object)的結果是這樣的。 如何使用for循環僅打印出權限? count($ object ['data'])給了我一個錯誤,指出'data'沒有被定義。Facebook Permission Graph API

Array 
(
    [0] => stdClass Object 
    (
     [permission] => user_likes 
     [status] => granted 
    ) 

[1] => stdClass Object 
    (
     [permission] => user_friends 
     [status] => granted 
    ) 

[2] => stdClass Object 
    (
     [permission] => publish_actions 
     [status] => granted 
    ) 
) 

回答

0

我沒有看到一個data屬性,當你做print_r($object)。嘗試

for($i = 0 ; $i <count($object); $i++){ 
    echo "<br>" . $object[$i] -> permission; 
} 
+0

謝謝!我花了整整一天的時間來解決這個問題。 –