https://github.com/themattharris/tmhOAuth
↑ ここからダウンロードして tmhOAuth.php をサーバにアップします。
require_once 'tmhOAuth.php'; $twitter = new tmhOAuth( array( 'consumer_key' => 'aaaaa' , 'consumer_secret' => 'bbbbb' , 'token' => 'ccccc' , 'secret' => 'ddddd' , 'curl_ssl_verifypeer' => false , 'timezone' => 'Asia/Tokyo' , ) ); $r = $twitter->request('POST', $twitter->url('1.1/statuses/update'), array( 'status' => 'hoge hoge hoge' ), true, false); // 正常終了なら $r に 200 が返る。 print '<pre>'; print_r($twitter); print '</pre>';
https://dev.twitter.com/docs/api/1.1
その他参考:
Googleサジェストや他の検索エンジンやアマゾンのサジェストをPHPで使用するには下記のように記述します。
($url = ''; の定義を複数行記述していますので、使用したいAPI以外の行をコメントアウトしてください。)
$text = 'ジャズ'; // Google $url = 'http://suggestqueries.google.com/complete/search?hl=ja&qu='.urlencode($text); // Youtube $url = 'http://clients1.google.com/complete/search?hl=en&ds=yt&client=firefox&q='.urlencode($text); // Amazon $url = 'http://completion.amazon.co.jp/search/complete?method=completion&search-alias=aps&mkt=6&q='.urlencode($text); // Yahoo $url = 'http://asprov.search.yahoo.co.jp/AssistSearchService/V2/webassistSearch?output=iejson&callback=ytopAssist&p='.urlencode($text); // Bing $url = 'http://api.bing.net/osjson.aspx?FORM=OPERAS&Market=ja&Query='.urlencode($text); $json = file_get_contents($url); $json = mb_convert_encoding($json, 'UTF8'); $data = json_decode($json,true); print "<pre>"; print_r($data); print "</pre>";
Bingでの使用例(「ジャズ」という単語でサジェストした結果)
Array ( [0] => ジャズ [1] => Array ( [0] => ジャズドリーム [1] => ジャズドリーム長島 [2] => ジャズダンス [3] => ジャズドリーム長島 クーポン [4] => ジャズピアノ [5] => ジャズドリーム長島 セール [6] => ジャズ 名曲 [7] => ジャズマスター ) )
となります。
Googleの短縮URLサービス goo.gl をPHPから使用するには以下のようなコードで実現できます。
https://code.google.com/apis/console/
ここから取得できます
function get_tiny_url($long_url=''){ $api_url = 'https://www.googleapis.com/urlshortener/v1/url'; $api_key = 'XXXXXXXXXXX'; $curl = curl_init("$api_url?key=$api_key"); curl_setopt($curl, CURLOPT_HTTPHEADER, array('Content-type: application/json')); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, '{"longUrl":"' . $long_url . '"}'); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $res = curl_exec($curl); curl_close($curl); $json = json_decode($res); $tiny_url = $json->id; return $tiny_url; }
$long_url = 'http://xxxx.xxxx.xxx.com/xxxxxxxxxxxxxx.html'; $tiny_url = get_tiny_url($long_url);
http://developer.hatena.ne.jp/ja/documents/keyword/apis/autolink
uri : http://d.hatena.ne.jp/xmlrpc encoding : utf8 methodName : hatena.setKeywordLink parameters : 以下を参照 body(string): キーワードを抽出するテキストを指定します。 score(int): 0〜50。キーワードスコアのしきい値を指定します。指定された値よりもスコアが大きいキーワードのみが抽出されます。省略可。 cname(array): キーワードのカテゴリーを指定します。指定があった場合、「一般」と指定されたカテゴリーのキーワードが抽出されます。指定が無かった場合は、全カテゴリーとなります。book,music,movie,web,elec,animal,anime,food,sports,game,comic,hatena,clubが指定可能です。省略可。 a_target(string): アンカー(a)タグのtarget属性値を指定します。省略可。例:_blank a_class(string): アンカー(a)タグのclass属性値を指定します。省略可。例:keyword mode(string): 値として lite を指定すると、キーワード自動リンクの結果ではなく、自動リンクに使われるキーワード一覧が返却されます。省略可
require_once 'XML/RPC.php'; $text = "日本語の文化と日本語のテスト"; $out_text = hatena_keyword_link($text); print_r($out_text); function hatena_keyword_link( $body ){ $body = mb_convert_encoding( $body,'utf8',mb_internal_encoding() ); $params = new XML_RPC_Value(array( "body" => new XML_RPC_Value( $body , "string" ), "score" => new XML_RPC_Value( 0 , "int" ), "a_target" => new XML_RPC_Value( '_blank', "string"), "a_class" => new XML_RPC_Value( 'keyword', "string") ), "struct"); $msg = new XML_RPC_Message("hatena.setKeywordLink", array($params)); $client = new XML_RPC_Client( "/xmlrpc" , "d.hatena.ne.jp", 80 ); $response = $client->send($msg); if (!$response->faultCode()) { $val = $response->value(); $data = XML_RPC_decode($val); return $data; } else { return PEAR::raiseError( $response->faultCode(), $response->faultString() ); } }
実行結果
<a class="keyword" target="_blank" href="http://d.hatena.ne.jp/keyword/%C6%FC%CB%DC%B8%EC">日本語</a>の<a class="keyword" target="_blank" href="http://d.hatena.ne.jp/keyword/%CA%B8%B2%BD">文化</a>と<a class="keyword" target="_blank" href="http://d.hatena.ne.jp/keyword/%C6%FC%CB%DC%B8%EC">日本語</a>の<a class="keyword" target="_blank" href="http://d.hatena.ne.jp/keyword/%A5%C6%A5%B9%A5%C8">テスト</a>
http://gdata.youtube.com/feeds/api/videos?vq=michael+Jackson&max-results=10
http://gdata.youtube.com/feeds/api/videos/MYx3BR2aJA4
http://gdata.youtube.com/feeds/api/videos/MYx3BR2aJA4/related
http://gdata.youtube.com/feeds/projection/standardfeeds/FEED_ID
FEED_IDに指定できる文字列
feedid 説明 top_rated 評価の高い動画 top_favorites お気に入り登録の多い動画 most_viewed 再生回数が多い動画 most_discussed 最も議論された動画 most_linked リンクの多い動画 most_responded 動画レスポンスの多い動画 recently_featured 最近のおすすめ動画 watch_on_mobile 携帯電話のための動画
http://gdata.youtube.com/feeds/api/users/USER_NAME/favorites
http://gdata.youtube.com/feeds/projection/playlists/PLAYLIST_ID
http://gdata.youtube.com/feeds/projection/users/「USER_NAME」
http://gdata.youtube.com/feeds/projection/users/USER_NAME/playlists
http://gdata.youtube.com/feeds/projection/users/USER_NAME/subscriptions
http://gdata.youtube.com/feeds/projection/users/username/contacts
後ろに ?v=2&alt=jsonc を追加する
http://gihyo.jp/dev/feature/01/jquery-ajax/0003