当前位置首页 > IIS知识

IIS+PHP下调用WebService初试

阅读次数:347 次  来源:admin  发布时间:

随着WebService的普及,PHP也逐渐对其加强了支持。PHP的SOAP库可以用于创建SOAP服务器和客户端,这里先讨论客户端访问的情况。在Windows下的PHP默认没有打开PHP的SOAP扩展函数库,所以首先要在php.ini里加上一个extension=php_soap.dll;而在Linux下据说要用Gnome xml库:libxml。

其实就是一个SoapClient类。其构造函数原型是:

SoapClient {

__construct(mixed wsdl,

array options)

}

提供两种方式的构造方式:可以提供一个WSDL,也可以在options里指定Location和URI。

$client = new SoapClient("some.wsdl")

$client = new SoapClient(null, array('location' => "http://localhost/soap.php",

'uri' => "http://test-uri/"))

然后就可以像调用成员函数一样调用WebService里面的函数了,当然也可以用__call()方法:

$r = $client -> func($para1,$para2...)

$r = $client -> __call("func", array($para1,$para2))

其中func是要调用的函数名,返回的$r是一个对象,可以访问其成员“funcResponse”来获取返回值。

主要的技术就是这样,但似乎不支持异步调用。而我试了一下,当返回值是整型时,好像一直是0,不知道是哪里出错了,还是库本身有问题。
上一篇:Vista+IIS7下不能显示图片jpg等和静态网页Html等
下一篇:配置Linux实现静态路由