codebird でつぶやき取得
#06 つぶやきを取得しよう
http://dotinstall.com/lessons/more_php_v2/21806
を参考に
codebird を使って
パラメータを与えることでつぶやきを取得する
ユーザのタイムラインを取得するにはいくつかのオプションがある
今回、使用するのは
screen_name
include_trs
パラメータは配列でセットするので
1 2 3 4 | $params = array ( 'screen_name' => 'ユーザ名' , 'include_trs' =>true ); |
として
1 | $tweets = ( array ) $cb ->statuses_userTimeline( $params ); |
というように、$params を指定する
(array) はキャストで、型を配列に変換している
そして、中身を確認するため
1 | var_dump( $tweets ); exit ; |
で確認する
なお、screen_name に入力する名前は
アプリ登録画面で
自分のアイコンにマウスを載せれば表示されるので
もしわかならいのなら、これで確認
さすがに文字がたくさんでわかりにくいので
ページを右クリックして
ソースを表示すると
整列されてみやすくなる
このときに
array(21) {
と1行めにでているように
21の配列で構成されている
必要なのは
[“text”]=>
あたりのところ
この返ってくる値には
最後にHTTPステータスコードがついてくるので
このステータスコードは取り除く
これには、配列の末尾から取り除く要素を関数
array_pop() を使う
解説については
http://phpspot.net/php/man/php/function.array-pop.html
を参照
今回なら
1 | array_pop ( $tweets ); |
とする
これで余分なものは削除できたので
HTMLへかえす要素をリスト形式で作成
つぶやきのIDは
1 | $tweet ->id_str |
つぶやき本文は
1 | $tweet ->text |
で取得できる
つぶやきを繰り返し取得して代入するので
foreach() を使う
1 2 3 | foreach ( $tweets as $tweet ){ echo '<li id="tweet_' . $tweet ->id_str. '">' . $tweet ->text. '</li>' ; } |
となる