您好,欢迎访问一九零五行业门户网

利用PHP SOAP扩展实现简单Web Services_PHP教程

利用php soap扩展实现简单web services webservices能干什么? 
webservices 可以将应用程序转换为网络应用程序。
通过使用 webservices,您的应用程序可以向全世界发布信息,或提供某项功能。
好了,关于webservices网上资料很多,就不过多介绍了,直接进入主题。
php有两个扩展类库可以实现webservices,一个是nusoap,一个是php官方自带的soap扩展,在使用上大致都差不多,就拿官方自带的soap扩展来说吧。
在soap编写webservices中主要用到了soapclient,soapserver,soapfault三个类。
soapclient:用户访问的类,也就是客户端,使用webservices的类
soapserver:提供webservices类,服务端
soapfault:异常处理类
作为示例,写个超级简单的的webservices来感受下吧,直接代码说话
1、myself.class.php--业务逻辑类,功能实现类
复制代码
1
复制代码
很简单,无需多余解释,返回一个字符串。
2、soapserver.php--服务端类,提供服务
复制代码
 1 'http://localhost/',
 6         'location'=>'http://localhost/soap/soapserver.php'
 7         );
 8     $soapserver=new soapserver(null,$parameter);
 9     $soapserver->setclass('myself');
10     $soapserver->handle();
11 ?>
复制代码
soapserver有两种操作模式:
上面举例的是non-wsdl模式,在实例化soapserver类时,一个参数是放wsdl文件,在non-wsdl模式里,可以为空,把配置参数以数组的形式写在第二个参数。
如果用的是wsdl模式,可以直接用wsdl文件让服务器读取配置参数,此时可以省略第二个数组参数。
配置参数有许多,上面为简单举例只列出2个,具体大家可以在网上查查
uri--命名空间
location--服务地址
1、wsdl模式在wsdl模式中,构造器可以使用wsdl文件名作为参数,并从wsdl中提取服务所使用的信息。
2、non-wsdl模式在non-wsdl模式中,使用参数来传递要使用的信息,用来管理服务的行为。
在soapserver类的众多方法中,有三个方法比较重要。它们是soapserver::setclass()、soapserver::addfunction()、soapserver::handle()。
特别注意,在handle方法之前之后均不能输出任何参数,否则会出错。
3、soapclient.php--客户端类,使用服务
复制代码
 1 'http://localhost/',
 5         'location'=>'http://localhost/soap/soapserver.php'
 6         );
 7     try{
 8         $soapclient=new soapclient(null,$parameter);
 9         echo $soapclient->info();
10 
11     }catch(exception $e){
12         echo $e->getmessage();
13     }
14 
15 ?>
复制代码
soapclient类可以作为给定webservices的客户端。
http://www.bkjia.com/phpjc/859801.htmlwww.bkjia.comtruehttp://www.bkjia.com/phpjc/859801.htmltecharticle利用php soap扩展实现简单web services webservices能干什么? webservices 可以将应用程序转换为网络应用程序。 通过使用 webservices,您的应用程序可...
其它类似信息

推荐信息