2012-10-18 61 views
3

我有一個由java中的web服務生成的WSDL,我需要在php應用程序中複製這個相同的Web服務。從PHP中的WSDL生成SOAP服務器

我看了,我發現的大多數腳本只是生成客戶端。 而我需要服務器端將被消耗。

回答

3

如果您有WSDL,那麼您可以簡單地將它傳遞給PHP5中定義的SoapServer類。

$server = new SoapServer("some.wsdl"); 
$server->setClass('MySoapServer'); 
$server->handle(); 

當然,你需要寫MySoapServer類來處理方法,在你的WDSL使這個例子工作定義。

例如,如果WDSL定義的add($a, $b)函數,類會像這樣:

class MySoapServer 
{ 
    public function add($a, $b) 
    { 
     return $a + $b; 
    } 
} 

來源:http://au1.php.net/manual/en/soapserver.soapserver.php & http://au1.php.net/manual/en/soapserver.setclass.php

0

我一直在尋找相同的功能,但它看起來像它不存在這樣的服務器端。

之後,您可以使用腳本作爲wsdl2php來生成客戶端類,並且只使用類創建信息並響應它創建的部分...然後您將使用SoapServer聲明作爲noetix提議。

有wsdl2php在這個網站好介紹:http://www.dimuthu.org/blog/2008/09/21/wsdl2php-2-minutes-introduction/

如果有人知道腳本生成的服務器端,我仍然有興趣:)