ホームページ  >  記事  >  バックエンド開発  >  PHP_PHP チュートリアルでの Web サービス インターフェイスの作成と呼び出しの例

PHP_PHP チュートリアルでの Web サービス インターフェイスの作成と呼び出しの例

WBOY
WBOYオリジナル
2016-07-13 10:21:49732ブラウズ

PHPでのWebサービスインターフェースの作成と呼び出しの例

この記事では主に、Webサービスの基礎知識、Webサービスサーバーの例、Webサービスクライアントの例など、PHPでのWebサービスインターフェースの作成と呼び出しの例を紹介します。

開発者として、Web サービス インターフェイスを作成したり、他の人の Web サービス インターフェイスを呼び出したりしたい場合は、まず Web サービスとは何かを理解する必要があります。簡単に言うと、WebService は、いくつかのサイトで公開されているサービス、または自分で開発したサービス、つまりメソッド名を指定してリクエストを行うものです。サイトはリクエストを受け取り、渡されたパラメータに基づいて処理を実行し、プログラムは XML データを解析して表示するか、その他の操作を実行します。

Web サービスを作成するには、基本的な Web サービス プラットフォームは XML + HTTP であること、さらに Web サービス プラットフォームの要素である SOAP (Simple Object Access Protocol)、UDDI (Universal description、Discovery and Integration)、WSDL を理解する必要があります。 (Web サービス記述言語); あらゆる Web サービスにはクライアントとサーバーが含まれます。例を使用して、PHP を使用して他のユーザーが呼び出すための Web サービス インターフェイスを作成する方法を説明しましょう:

まず .wsdl ファイルを作成する必要がありますが、このファイルを PHP で作成する方法です。これを実現するには 2 つの方法があり、1 つは zend Studio ツールを使用して直接生成する方法で、もう 1 つは PHP を使用して SoapDiscovery.class.php に基づいて wsdl ファイルを自動的に生成する方法です。どちらを選択するかは状況に応じて異なります。私は通常、この比較を高速に使用します。クラスを使用して wsdl ファイルを生成する方法を書き留めてみましょう。まず、インターネットからクラス ファイルをダウンロードし、クラス ファイルをインポートした後、次のコードを見てください。

creat_wsdl.php

コードをコピーします。コードは次のとおりです:

include_once('Service.php');

include_once('SoapDiscovery.class.php');

$wsdl=new SoapDiscovery('Service','soap');//最初のパラメータはクラス名で、生成された wsdl Service.wsdl のファイル名でもあり、2 番目のパラメータはサービスの名前です。気軽に書けます

$wsdl->getWSDL();

?>

このように、creat_wsdl.phpファイルを実行することでwsdlファイルを生成することができます。すごくシンプルじゃないですか

Web サービスは実装クラスにバインドする必要があります。言い換えれば、他の人によって呼び出される wsdl ファイルの実際の機能は、クラスにメソッドを実装することです。次のコードはサーバー クラス ファイルです。

Service.php

コードをコピーします。コードは次のとおりです:

クラスサービス

{

パブリック関数 Hello()

{

「こんにちは」をエコーし​​ます;

}

パブリック関数Add($a,$b)

{

$a+$b を返す;

}

}

$server=SoapServer('Service.php',array('soap_version'=>soap_1_2));

$server->setClass('Service');//Serviceクラスのメソッドをすべて登録します

$server->handle();//リクエストの処理

?>

サーバーファイルとwsdlファイルを作成した後、クライアントからそれらを呼び出す必要があります。クライアント呼び出しコードを参照してください:

client.php

コードをコピーします。コードは次のとおりです:

ini_set('soap.wsdl_cache_enabled','0');//キャッシュをオフにする

$soap=new SoapClient('http://127.0.0.1/soap/Service.php?wsdl');

echo $soap->Add(1,2);

//echo $soap->_soapCall('Add',array(1,2))//または次のように呼び出すこともできます

?>

http://www.bkjia.com/PHPjc/852814.html

tru​​ehttp://www.bkjia.com/PHPjc/852814.html技術記事 PHP での Web サービス インターフェイスの作成と呼び出しの例 この記事では、Web サービスの基礎知識、Web サービス サーバーの例、Web サー...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。