【備忘録】PHP知識0が1からTwitterOAuthを使ってみる
こんにちは!
PHPを一度無ふれたことがない
ガチの知識ゼロが1からTwitterOAuthを使ってみました。
調べれば余裕だろとか思っていたらめちゃくちゃ苦戦しました。
というか、PHPを一度でも使ったことある前提の記事しかなく
仮にコピペでPHPを記述しても実行方法がわかりませんでした。
ほとんどの記事が2015年~2017年あたりの記事で
ちょっと古いということもあり余計に惑わし苦戦させたのかなって思いますね。
そんな、PHPも触ったことがない方でもこの記事を見れば
仮想サーバーにPHPを載せて、Twitterのトレンドを表示するまでできます。
ちなみに、仮想サーバーはXAMPPを使用しています。
準備するもの
・PHP(8.0.1)
・composer
・XAMPP
・TwitterOAuth
・Twitter API
PHPのインストール
PHPのダウンロードとインストールはこちら【Windows編】今すぐ簡単にできる!PHPのダウンロード方法を参考にしてみてください。
ほとんどは見ながらできますが
一部補足をしていきます。
”フォルダごとC:\の直下に移動します。”
とありますが、C:\の直下ってどこのこと?って思い方がいるかもしれませんね。
そのままの意味で、CドライブにPHPを移動してください。
”スタートメニューを右クリック→システムより「システム」画面を呼び出します。”
というところがありますが、
おそらく、この画面が開かれてしまい
どこだよってなるかと思います。
キーボードの「Windowsマーク」+「Pause」を同時押しすれば
この画面に行くかと思います。
それでもだめだったら、「ここに入力して検索」のところに
「コントロールパネル」と打ち込みコントロールパネルを開いて
「システムとセキュリティ」→「システム」で行けるかと思います。
”コマンドプロンプトを起動し(すでに開いている場合は一度閉じて再度開く)、「php -v」と入力してEnterキーを押し、以下の表示が出れば設定変更完了です。”
コマンドプロンプトの場所は
「ここに入力して検索」のところに
「コマンド」と打ち込みコマンドプロントを開きましょう。
composerのインストール
composerのダウンロードとインストールはこちら【PHP】Composerは絶対必要!インストール方法と解説で完全攻略を参考にしてみてください。
多分、補足がなくてもできるかと思います。
XAMPPのインストール
多分、補足がなくてもできるかと思います。
TwitterOAuth
TwitterOAuthのインストールは【2020年5月版】PHP / Twitter APIの使い方を参考にしてみてください。
上記に載せたcomposerとXAMPPのインストールが終わっていれば
TwitterOAuthのインストールは簡単に済むかと思います。
Twitter API
Twitter APIについてはこちら2020年度版 Twitter API利用申請の例文からAPIキーの取得まで詳しく解説を見つつキーの申請をしてみてください。
わかりずらければ、「Twitter API 申請」で
キーの取得方法を書いている記事がたくさん出てくるかと思うので
他のも参考にしてみてください。
PHPの記述
上記のインストールを終わらせれば
後は、PHPを記述していくだけです。
どこに記述をすればいいか、どこにPHPを作成すればいいか書かれていないことが
多いですが、それもしっかり書いていきます。
トレンドの取得しHTMLに出力したかったのでこちらの[PHP]TwitterのトレンドをAPIから取得する&HTML出力を参考にしています。
今回の記述していくところは
TwitterOAuthのインストールの工程のところで作成した
「TWEET」のフォルダーの中に「Twitter-trend.php」をいうPHPを作成しした。
作成方法は
新規作成→テキストドキュメント→「Twitter-trend.php」にリネームするだけです。
後は、VScodeやAtomなどのコードエディタを使いPHPを編集していきます。
参考にしたサイトからコピペでできるかと思いますが
foreachの閉じタグがなくエラーが出ていたので
下記のコードをそのままコピーしてみてください。
<?php
// Composerのautoload.phpを読み込み
require __DIR__ . '/vendor/autoload.php';
// TwitterOAuthクラスをインポート
use Abraham\TwitterOAuth\TwitterOAuth;
// Twitter APIの認証情報
$CK = 'APIキー';
$CS = 'APIシークレット';
$AT = 'Access Token';
$AS = 'Access Token Secret';
$connection = new TwitterOAuth( $CK, $CS, $AT, $AS );
$data = $connection->get('trends/place', ['id' => '2345896']);
if( $connection->getLastHttpCode() == 200 ){
foreach ($data[0]->trends as $key => $trend) {
// 接続に成功した場合に行う処理
echo '<' . ++$key . '>' . PHP_EOL;
echo '<h3 style="color:#1d2088"><a href="' . $trend->url . '"target="_blank" rel="noopener noreferrer">' . $trend->name . '</a></h3>' . PHP_EOL;
echo $trend->tweet_volume . '件のツイート' . PHP_EOL;
echo '<hr noshade>' . PHP_EOL;
}
}else{
// 接続に失敗したときに行う処理
echo "トレンドデータの取得に失敗しました。時間を開けて再度お試しください。";
}
コピーをしましたら、Twitter API で取得したキーを
それぞれのキーを、「APIキー」「APIシークレット」「Access Token」「Access Token Secret」のところに記述します。
記述が終わりましたら、PHPの完成です。
後は、XAMPPを起動させてApacheを「start」させます。
そのあとに「http://localhost/tweet/Twitter-trend.php」
をURLに打ち込めば表示されるかと思います。
ちなみにTwitter-trend.phpの部分は作成したPHPの名前を入れてあげてください。
現在時刻の「2021年1月30日11時30分」のトレンドが無事に表示されました。
まとめ
情報がありすぎて、ググってもどれがあっているのかわからない状態で
非常に苦戦しました。
特に苦戦したところは、TwitterOAuthのインストールですね。
ライブラリをダウンロードして使うという記事ばかりで
ダウンロードした後どうする?どうやって実行する?
もっと詳しく書けよ、初心者に優しくねーなと文句言いながら
いろいろ試していました。
正直、HTMLやCSS、JavaScriptみたいにコードエディタでPHPを作成し
後は記述して開けば、できるんかなと思っていたら全然違いました。
普通に開いたらソースコードが開かれて、調べたらPHPは仮想サーバーを通さないと
表示されないみたいなことが載っていました。
恐らく、今回参考にした記事を見つつ
同じ手順でやっていけば誰でも、Twitterのトレンドを取得することができるかと思います。
できるようになったら、画像だけを取得しHTMLに出力だったり
出力したHTMLからいいねを押せるようにしていきたいですね。
というわけで
それではっ!
コメント