如何获取从twitter API返回的stdClass对象的值?

时间:2016-10-03 09:22:32

标签: php json twitter

我使用twitter API来获取应用程序速率限制。当我提出请求时,我得到以下回复(使用print_r);

stdClass Object
(
[rate_limit_context] => stdClass Object
    (
        [application] => Vu62t75UIKwKA392lipsQPB91
    )

[resources] => stdClass Object
    (
        [search] => stdClass Object
            (
                [/search/tweets] => stdClass Object
                    (
                        [limit] => 450
                        [remaining] => 450
                        [reset] => 1475485694
                    )

            )

    )

[httpstatus] => 200
[rate] => stdClass Object
    (
        [limit] => 180
        [remaining] => 176
        [reset] => 1475485014
    )

)

我能够在每个键上获取值

$apiStatus= $limitJsonResponse->httpstatus;
$apiRateLimit=$limitJsonResponse->rate->limit;

但我无法找到访问此属性[/search/tweets]的值的方法。

如果我尝试将此属性的值视为其他

$limit =$limitJsonResponse->resources->search->/search/tweets->remaining;

我收到此错误

Parse error: syntax error, unexpected '/', expecting identifier (T_STRING) or variable (T_VARIABLE) or '{' or '$'

1 个答案:

答案 0 :(得分:0)

我不知道这是否是一个好答案,但它解决了我的问题 我将stdClass划分为对象,然后扩展到最后一个。

    $param=array('resources'=>'search');
    $limitJsonResponse=$apiObj->application_rateLimitStatus($param,true);

    // an stdClass object
    $searchObj=$limitJsonResponse->resources->search;

    $searchArray = (array)$searchObj;
    $searchTweetObj =$searchArray['/search/tweets'];
    $limit= $searchTweetObj->limit;
    echo $limit;