私は数日間、壁に向かって頭を叩いて、とても簡単な何かをしようとしました。私はJaison MathaiのEpiTwitterライブラリを使って自分のアカウントからツイートを取得しようとしています。ここに私のつぶやきを取得するために私のコードです:EpiTwitterJsonからのつぶやきを取得
<?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)、私は、他のデータの巨大な混乱の中で私がアクセスしたいつぶやきを見ることができます。
私の質問はここまでです。この時点から、返された各ツイートを単純にプリントアウトするにはどうすればよいですか?ここでは、私がこれまで試したものです:
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
EpiTwitterJsonで__getメソッドでは、ラインがあるので、私は、$ tjson->応答は、私が何をしたいだろうと思った: $this->response = json_decode($this->responseText, 1);
が。私がvar_dump($this->response)
ならこの行の直後に、私は前にvar_dump($ tjson)より少し少ないデータと一緒に私のつぶやきを取得します。同じ行の私がprint($this->response['status']['text'])
なら、私は自分のツイートの素敵な文字列を取得します。これはまさに私が望むものです。
私がよく理解していないのは、$ this-> responseがEpiTwitterJsonクラス内に設定されていますが、$ tjson-> responseが自分のコードでNULLである理由です。私は見て見て見てきましたが、私はこのライブラリでつぶやきを得るコードスニペットを見つけることができません。私はそれが私の脳がそれを受け入れることを拒否するように、はっきりとシンプルでなければならないものの一つだと思います。 もちろん、私は$ tjson-> responseTextをクロールできましたが、私はEpiTwitterJsonクラスの全体的なポイントがあったので、それをする必要はないと思いましたか?私は
foreach(something as $tweet) //do stuff with the tweet
第二に最良の答えを言うことができるように、別のライブラリでこれを行うには、コードになり、私の質問に理想的な答えは私の$ tjsonオブジェクトを煮詰めるためのコードとなります。私はEpiTwitter libを選択しました。これは、 'async'をサポートしています。これは、私がこれを使用することを決定した場合や、最もシンプルなコードのように思えるからです。率直に言って、私は実際にそれを理解するよりもこのことをもっと気にしています。私はそれが後で何を意味するかを理解することができます。