php soapclient的使用

如果要连接web service,目前比较通用的是使用soap的方式连接,对我们影响最直接的就是要学会使用 soapclient,下面就对soapclient的使用作一些总结,希望能有所帮助。

一般来说有两种常用的连接方法,一种是使用wsdl文件,另一种是直接连接远程服务。

对于第一种方法,wsdl文件可以放在本地,也可以是通过远程引用,具体方法如下:

$soap = new SoapClient("file.wsdl");

至于wsdl文件是什么,有什么作用,内容包含什么,这点有要深入学习的朋友可以自行查找学习,这里不多说,总之这样就算生成了一个soapclient对象了。

另一种方法是不提供wsdl的,具体如下:

$soap = new SoapClient(null,array("location"=>"服务地址","uri"=>"命名空间"));

两种方法只是提供了一种最简单的对象生成,如果还有更多参数,可以通过数组继续增加的,这要看提供web service的服务方的文档来定夺了。

对象生成后,下一步即是调用方法:

$result = $soap->__soapCall("method",array());

method是服务方提供的方法名,后面的数组是要传递过去的值,需要根据文档需求来传递。

另外有些服务商对编码还有要求,所以在执行调用之前,有的还需要对传递的值进行编码转换。

$result是通过调用得到的数据,直接打印在页面即可看到结果,如果一步即成功,那么恭喜你,如果返回的结果有错误,那还需要根据对方提供的文档一步步的排错,直到得到正确的结果为止。

你可能感兴趣的:(PHP,soapclient的使用)