PHPでTwitterの自動投稿をする準備からやり方まで【TwitterOAuth】

PHPのプログラムを使ってTwitterの自動投稿をする方法を紹介します。※自動投稿というよりかはPHPで投稿するやり方です。やり方次第では自動リツイートや自動投稿が可能かとは思いますが、とりあえずPHPから投稿するやり方をおとどけ。※この情報は既出の情報で二次情報になりますが実践録としてのこしておきます。

PHPからTwitterを投稿するための環境

PHPプログラムでツイートするため環境は以下のような感じでやりました。

  • Eclipse → Version: Oxygen.3a (4.7.3a)
  • Xampp
  • abraham/twitteroauth → twitterapiをつかうためのライブラリ

Eclipseは総合開発環境で、これでPHPプロジェクトが作成できます。XamppはウェブサーバーでこれがないとPHPが動かせません。abraham/twitteroauthはtwitterapiをつかうためのライブラリで、requierで読み込ませる必要があります。

PHPでツイートするための準備

PHPでプログラムをつかって投稿するコードはコピペで動くのですが、準備が意外に面倒でした。以下のことをやる必要があります。

  1. Twitterの開発者登録とアプリの作成
  2. abraham/twitteroauthライブラリのダウンロード
  3. Eclipseでのプロジェクト作成

まず1のTwitterの開発者登録ですが、 Twitter Developers でやります。アプリの作成は別段審査はありません。ネットの情報だと審査に時間がかかったなどの情報があるのですがなにを言っているのかよくわかりませんでした。アプリ作成のときも色々と情報の入力があるのですが結構適当に入力しても作れます。開発者登録してアプリを作成することではじめてapikeyとaccesstokenがもらえます。

2のライブラリダウンロードについては、 GitHub – abraham/twitteroauth: The most popular PHP library for use with the Twitter OAuth REST API. からzipファイルをダウンロードしてきて、その中に入っているtwitteroauth-masterというフォルダごとEclipseのプロジェクトにつっこみます。

3のEclipseでのプロジェクト作成は特に苦労することはありませんが、2のtwitteroauthのライブラリをプロジェクトにつっこむことを忘れずに行います。

PHPでツイートするためのコード

PHPでツイートするコードは普通に公開されていますのでそれをコピペするだけです。

<?php
// OAuthライブラリの読み込み
require "twitteroauth-master/autoload.php";
use Abraham\TwitterOAuth\TwitterOAuth;

$consumerKey = "xxx";
$consumerSecret = "xxx";
$accessToken = "xxx";
$accessTokenSecret = "xxx";

$twitter = new TwitterOAuth($consumerKey, $consumerSecret, $accessToken, $accessTokenSecret);
$result = $twitter->post(
    "statuses/update",
    array("status" => "hello world")
    );

if($twitter->getLastHttpCode() == 200) {
    // ツイート成功
    print "tweeted\n";
} else {
    // ツイート失敗
    print "tweet failed\n";
}

このコードの場合は、このプログラムを実行した場合、”hello world”という文字がツイッターのアカウントに投稿されます。accessTokenなどにもし誤字脱字などがある場合はツイートが失敗しtweet failedになります。ツイートが失敗する場合は入力したkeyやtokenに誤りがないか今一度確認しましょう。

twitterのapikeyやaccesstokenは Twitter Developersで自分が作成したアプリの詳細から確認することが可能です。
twitter api screenshot

まとめ

PHPからツイートする方法をお届けしました。今回はただプログラムから投稿しただけでしたが、情報を見ているとBotをつくることもできるようです。今回の記事で参考したサイトは以下になります。

PHPからTwitterに投稿する – Qiita
〇もうひとつ参考にしたサイトがあったのですが、リンクがわからなくなったので省略。(このサイトにはgithubからabrahamをダウンロードすることができる旨が書いてありました。記事の最初のほうにgithubのリンクを貼り付けてます。)