从EpiTwitterJson获取推文


Get Tweets from EpiTwitterJson

几天来,我一直在努力做一些本应如此简单的事情。我正在尝试使用Jaison Mathai的EpiTwitter库从我的帐户中检索推文。这是我获取推文的代码:

<?php $twitterObj = new EpiTwitter($__TWITTER['ConsumerKey'], $__TWITTER['ConsumerSecret'],$__TWITTER['MyAccessToken'],$__TWITTER['MyAccessTokenSecret']);
$twitterInfo= $twitterObj->get_accountVerify_credentials();
$twitterInfo->response;
// ^ This part works fine, I can get my user info and profile pic and whatnot
$username = $twitterInfo->screen_name;
$tjson = $twitterObj->get('statuses/user_timeline.json', array("screen_name"=>$username));

据我所知,^这也是应该的。如果我var_dump($tjson),我可以看到我想要访问的tweet,以及大量其他数据。

我的问题归结为:从这一点上讲,我如何简单地打印出每一条返回的推文?以下是我迄今为止所尝试的:

foreach($tjson as $tweet) print($tweet)
//^ Throws IllegalArgumentException, "Not an array or object"
foreach($tjson->responseText as $tweet) print($tweet)
//^ Warning: illegal argument. Doesn't print anything
print_r($tjson->response) //Prints NULL

我认为$tjson->response将是我想要的,因为在EpiTwitterJson中的__get方法中,有一行:CCD_ 1。就在这一行之后,如果我var_dump($this->response),我得到的tweets数据比之前的var_dump($tjson)少一点。如果在同一行我print($this->response['status']['text']),我会得到一个很好的推特字符串,这正是我想要的。

我不太明白的是,为什么$this->response设置在EpiTwitterJson类内部,而$tjson->response在我的代码中为NULL。我看了又看,但似乎找不到任何代码片段来获得这个库的推文。我认为这只是那些明显而简单的事情之一,以至于我的大脑拒绝接受它。很明显,我可以浏览$tjson->responseText,但我认为EpiTwitterJson类的全部意义在于,所以我不必这么做?我的问题的理想答案将是代码来简化我的$tjson对象,这样我就可以说

foreach(something as $tweet) //do stuff with the tweet

第二个最好的答案是使用另一个库执行此操作的代码。我之所以选择EpiTwitterlib,是因为它"支持异步",如果我决定使用它,这听起来有点酷,而且它看起来是最简单的(即我的代码行最少)。坦率地说,我真的更关心的是制作这部作品,而不是理解它;我稍后可以弄清楚这一切意味着什么。

foreach($tjson->response as $post){
    echo '<pre>';
    var_dump($post);
    echo '</pre>';
}

这对我有用。

例如,你可以像$post['id']那样获得post的id,或者用户名$post['ser']['name']