creat_wsdl.php
<?php include_once('Service.php'); include_once('SoapDiscovery.class.php'); $wsdl=new SoapDiscovery('Service','soap');//第一参数为类名,也是生成wsdl的文件名Service.wsdl,第二个参数是服务的名字可以随便写 $wsdl->getWSDL(); ?>
<?php class Service { public function Hello() { echo 'hello good'; } public function Add($a,$b) { return $a+$b; } } $server=SoapServer('Service.php',array('soap_version'=>soap_1_2)); $server->setClass('Service');//注册Service类的所有方法 $server->handle();//处理请求 ?>
写好服务端和wsdl文件后那么就需要客户端调用了。请看客户端调用代码:
client.php
<?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))//或者这样调用也可以 ?>
这就是一个完整的写webservice接口和调用的实例代码,希望对需要的phper有所帮助;
那么调用别人的webservice接口就是client.php所写的代码这样调用。