今日はTwitterの自動投稿API(要はbot)を
PHP+OAuth認証で作成する方法を紹介します。

OAuth認証にはPearのOAuthが有名ですが、
twitteroauth.phpを利用する方法が簡単です。

①まず、下記URLからtwitteroauth.phpとOAuth.phpを
ダウンロードしてください。

http://github.com/abraham/twitteroauth/tree/master/twitteroauth/


技術者もどきの備忘録-twitteroauth.php


②TwitterAPIに登録し、各種KEYを取得する

2-1. http://dev.twitter.com/ に登録

 ・アプリケーション名
   「○○から投稿」で表示される名前になります
 ・アプリケーションの説明
   説明を書いてください
 ・アプリケーションのウェブサイトのURL
   なんでもいいです。http://twitter.com/でも大丈夫でした。
 ・所属会社/団体
   適当でいいです
 ・アプリケーションの種類
   「クライアントアプリケーション」を選択
 ・Default Access Type
   「Read & Write」を選択

2-2. 登録後の画面から、Consumer Keyと、Consumer Secretを取得

2-3. 画面右の「My Access Token」をクリックし、
Access TokenとAccess Token Secretを取得


③プログラムは下記のような感じ

<?php

require_once("twitteroauth.php"); //twitteroauth.phpのパス。同一ディレクトリにOAuth.phpも設置する

$message = "投稿内容";

// Consumer keyの値
$consumer_key = "";
// Consumer secretの値
$consumer_secret = "";
// Access Tokenの値
$access_token = "";
// Access Token Secretの値
$access_token_secret = "";

// OAuthオブジェクト生成
$to = new TwitterOAuth($consumer_key,$consumer_secret,$access_token,$access_token_secret);

//投稿
$req = $to->OAuthRequest("https://twitter.com/statuses/update.xml","POST",array("status"=>"$message"));

// レスポンスを表示する場合は下記コメントアウトを外す
//header("Content-Type: application/xml");
//echo $req;

?>


たったこれだけで、$messageの内容を投稿できます。

$to->OAuthRequest() の引数を適宜変えることで、
投稿以外にもフォローなども行えるので、
APIの仕様書 を見ながらいろいろ試してみてください!!