访问stdClass对象中的数组元素

时间:2014-11-09 18:41:34

标签: php facebook-graph-api

我正在尝试访问Facebook API响应中的元素。响应是Facebook图形对象,输出到屏幕时如下所示。

// send request
$response = (new FacebookRequest($session, 'GET', '/me/inbox?limit=0'))->execute();

// get Facebook Graph Object
$object = $response->getGraphObject();

echo print_r($object);

//Output from print_r
Facebook\GraphObject Object ( 
    [backingData:protected] => Array ( 
        [data] => Array ( ) [summary] => stdClass Object ( 
             [unseen_count] => 0 [unread_count] => 6 [updated_time] => 2014-11-09T13:41:26+0000 ) 
    ) 
) 

我正在尝试访问数组中的'unread_count',但没有运气。有人也可以解释它是什么,因为它不是典型的数组并包含对象。

2 个答案:

答案 0 :(得分:1)

试试这个:

$object = $response->getGraphObject()->asArray();
echo var_dump($object);

来源:https://developers.facebook.com/docs/php/GraphObject/4.0.0


顺便说一句,请记住,您不会获得read_mailbox批准使用Facebook客户端的平台:

  

此权限授予在Facebook尚不可用的平台上构建Facebook品牌客户端的应用程序。例如,Android和iOS应用不会获得此权限的批准。此外,Web,桌面和电视应用程序不会被授予此权限。

来源:https://developers.facebook.com/docs/facebook-login/permissions/v2.2

答案 1 :(得分:0)

您可以尝试print_r(get_class_methods($ object))。这将返回与该对象关联的所有方法。