ダウンロード ソースコードのダウンロード (2.2 KB)
SOAPサーバコード
PHPでのSOAPサーバオブジェクトの作成は、非常に簡単です。
次に例を示します。
$server = new SoapServer("some.wsdl");
非WSDLモードの場合はこうなります。
$server = new SoapServer(null, array('uri' => "http://test-uri/"));
そこで、私のサンプルの場合は、次のようになります。
$server = new SoapServer("hw.wsdl");
実行する実際の関数を登録し、着信リクエストの処理を開始する必要もあります。
$server->addFunction("getHW");
$server->handle();
コード全体を次に示します。
<?php
function getHW($arr) {
$result = array_sum($arr);
return "<HTML>
<HEAD>
<TITLE>SOAP Server Example</TITLE>
</HEAD
<BODY>
<table>
<tr>
<th>SOAP Server Example - adding array on the server</th>
</tr>
<tr>
<td>$arr[0] + $arr[1] = $result</td>
</tr>
</table>
</BODY>
</HTML>";
}
ini_set("soap.wsdl_cache_enabled", "0");
$server = new SoapServer("hw.wsdl");
$server->addFunction("getHW");
$server->handle();
?>
SOAPクライアントコード
クライアントコードはさらに簡単です。「コントラクト」、つまりWSDLファイルの場所を指定し、定義ごとにクライアントに関数を呼び出させて数値配列を渡す必要があります。
<?php
$client = new SoapClient("http://localhost/hw.wsdl");
$response = $client->getHW(array(1,2));
echo $response;
?>
結果は、1 + 2 = 3のようになります。
この記事は参考になりましたか?
- japan.internet.com翻訳記事連載記事一覧
- この記事の著者
-
japan.internet.com(ジャパンインターネットコム)
japan.internet.com は、1999年9月にオープンした、日本初のネットビジネス専門ニュースサイト。月間2億以上のページビューを誇る米国 Jupitermedia Corporation (Nasdaq: JUPM) のニュースサイト internet.com や EarthWeb.com からの最新記事を日本語に翻訳して掲載するとともに、日本独自のネットビジネス関連記事やレポートを配信。
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です
-
Vlad Kofman(Vlad Kofman)
ウォールストリート有数の企業でエンタープライズレベルのプロジェクトに携わる。また、米国政府の防衛関連の仕事も手がけている。特に関心を寄せているのは、オブジェクト指向プログラミング方法論、UI、デザインパターン。
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です
この記事は参考になりましたか?
この記事をシェア
