[Header]
はじめに
前回PHPでTwitterの簡単なツイート(つぶやき)をするコーディングをしてみました。今回は、「自分のツイートを取得」してみたいとおもいます。
PHPでTwitterの投稿やツィートを取得するプログラムを作成する為には、事前にTwitterの開発者向けサイトにて「Consumer key」「Consumer secret」「Access token」「Access token secret」の取得が必要なのは前回と同様です。
ライブラリ「TwitterOAuth」のダウンロード
以下のサイトからライブラリ「TwitterOAuth」一式がダウンロードできます。
https://github.com/abraham/twitteroauth
このサイトの緑色のボタン「clone or download」を押下することでZipファイルをダウンロードすることができます。
「twitteroauth-master.zip」というZIPファイルがダウンロードされます。
このファイルを展開(解凍)するとフォルダ「twitteroauth-master」が作成されます。
Twitterで自分のツイートを取得するサンプルコード
<?php
// OAuthライブラリの読み込み
require "twitteroauth-master/autoload.php";
use Abraham\TwitterOAuth\TwitterOAuth;
//認証情報(開発者向けサイトで取得したキーやトークン等4つ)
$consumerKey = 'XXXXXXXXXXXXXXXXXXXXXXXXX';
$consumerSecret = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX';
$accessToken = 'XXXXXXXXX-XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX';
$accessTokenSecret = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX';
//接続
$conn = new TwitterOAuth($consumerKey, $consumerSecret, $accessToken, $accessTokenSecret);
// 自分のツイートを10件取得
$user_params = ['count' => '10'];
$res = $conn->get('statuses/user_timeline', $user_params);
// stdClass(Json) to 連想配列
$arr = json_decode(json_encode($res), true);
for ($i=0; $i<count($arr); $i++)
{
echo $arr[$i]['text'].PHP_EOL;
echo $arr[$i]['entities']['urls'][0]['expanded_url'].PHP_EOL;
echo PHP_EOL;
}
?>
Twitterへの認証までは、特に変わりはありませんね。
実際に自分のツイートを取得したじてんでは、「stdClass」オブジェクトになっていて、後で使いにくいので、連想配列へ変換しております。
$arr = json_decode(json_encode($res), true);
取得できる内容については、「$arr」の中身をダンプする事で構造がみられますので、それに沿って、欲しいデータの取得が可能です。
var_dump( $arr );
まとめ
事前に以下4つの認証情報を取得しておく
- Consumer Key (API Key)
- Consumer Secret (API Secret)
- Access Token
- Access Token Secret
ライブラリ「TwitterOAuth」をダウンロードする
今回の記事の内容も、準備さえ整っていれば、コーディング自体は簡易な内容になりますね。
[A8_TechAcademy065]
[Footer]