ZendFramework::XmlRpc_Client

ZendFrameworkのZend_XmlRpc_Clientではてなブクマ件数取得APIをたたいてみる。
例外処理とか、汎用性がないとかは、気にしない。
ただ、書いてみる。

<?PHP
//******************************
// Common
//******************************
require_once 'Zend/XmlRpc/Client.php';

//******************************
// Client Setting
//******************************
$host   = 'http://b.hatena.ne.jp';
$path   = '/xmlrpc';
$url    = $host . $path;
$method = 'bookmark.getCount';

//******************************
// Client
//******************************
$client = new Zend_XmlRpc_Client($url);

//******************************
// Parameter
//******************************
// ブクマ数を取得するURL
$prm1 = 'http://d.hatena.ne.jp/';
$prm2 = 'http://www.hatena.ne.jp/';
$prm3 = 'http://b.hatena.ne.jp/';
$prm4 = 'http://s.hatena.ne.jp/';
$param = array($prm1,$prm2,$prm3,$prm4);

//******************************
// Call
//******************************
$result = $client->call($method, $param);

print_r($result);

//******************************
// XML_RPC_Response
//******************************
$response = $client->getLastResponse();

print_r($response);

普通に、メソッドとパラメータを用意してCALLするだけで取得できる。
しかも、普通にCALLするだけでPHPの配列に入ってくれるし楽だな。*1
XML_RPC_ResponseのオブジェクトもCALLしたあとにGetLastResponseで取得できる。

Zend Framework

*1:それでいいかは別として