我正在使用PHP 5中的本机SOAP类,从NuSOAP更改为本机类更快(并且NuSOAP开发似乎已经停止).但是,PHP 5 SOAP缺乏生成WSDL的能力.
有没有经验在PHP中生成WSDL?如果是这样,请推荐您的首选方法.
谢谢.
斯图尔特,
如果你或其他任何人正在寻找这个问题的解决方案,这就是我所做的.
首先得到这个脚本:http://www.phpclasses.org/browse/download/zip/package/3509/name/php2wsdl-2009-05-15.zip
然后看看它的示例文件.之后,我只是按照我需要的方式切片,因为我正在使用codeigniter:
function wsdl(){ error_reporting(0); require_once(APPPATH."/libraries/WSDLCreator.php"); //Path to the library $test = new WSDLCreator("Webservice", $this->site."/wsdl"); //$test->includeMethodsDocumentation(false); $test->addFile(APPPATH."/controllers/gds.php"); $test->addURLToClass("GDS", $this->site); $test->ignoreMethod(array("GDS"=>"GDS")); $test->ignoreMethod(array("GDS"=>"accessCheck")); $test->createWSDL(); $test->printWSDL(true); // print with headers }
它,你的一切都完成了.顺便说一句,我在php5 +中使用SoapServer和SoapClient