Top > xtra > php_manual > xmlrpc > xmlrpc_server_create

xmlrpc_server_create

xmlrpc サーバを作成します。作成されたサーバインスタンスは PHP リソース型でアクセスすることになります。

説明

resource xmlrpc_server_create(void)

パラメータ

なし

返り値

xmlrpc サーバを示す PHP リソース型。

次の例は、XML-RPC サーバの実装例です。

<?php
# php://input で HTTP POST で渡される XML ドキュメントを取り込みます。
$xml = file_get_contents('php://input');

# xmlrpc サーバに登録する callback 関数は 3 つの引数を取ります。
function php_trim($methodName, $args, $user_data){
 return trim($args[0]);
 // ちなみに XML-RPC の fault レスポンスを返したい場合は
 // 次のように faultCode, faultString を持った配列を返すと実現できます。
 // return array('faultCode'=>-1234, 'faultString'=>'some error');
}

$server = xmlrpc_server_create();
xmlrpc_server_register_method($server, 'php.trim', 'php_trim');
$response = xmlrpc_server_call_method($server, $xml, null);
header('Content-type: text/xml');
echo $response;
xmlrpc_server_destroy($server);
?>

xmlrpc_server_create で作成した XML-RPC サーバではイントロスペクションが サポートされていて、たとえば system.listMethods はユーザが登録した メソッドも含めて正しく一覧表示します。 イントロスペクションの説明をさらに追加する場合は、 xmlrpc_server_add_introspection_data や xmlrpc_server_register_introspection_callback を使って、 イントロスペクション記述情報を登録します。

xmlrpc_server_create で作成した XML-RPC サーバでは system.multiCall メソッドが標準で利用できます。


Reload   New Lower page making Edit Freeze Diff Upload Copy Rename   Front page List of pages Search Recent changes Backup Referer   Help   RSS of recent changes
Last-modified: (1817d)

© 2006-2008 Internet Revolution