php5调用webservice的解决办法

内容摘要
这篇文章主要为大家详细介绍了php5调用webservice的简单示例,具有一定的参考价值,可以用来参考一下。

对php5中调用webservice对此感兴趣的朋友,看看idc笔记做的技术笔记!php5
文章正文

这篇文章主要为大家详细介绍了php5调用webservice的简单示例,具有一定的参考价值,可以用来参考一下。

对php5中调用webservice对此感兴趣的朋友,看看idc笔记做的技术笔记!php5中包含了使用webservice的拓展。 需要php.ini中的两项配置:extension=php_openssl.dll extension=php_soap.dll手册中的说明在“SOAP Functions”部分。大致过程:1.使用web service的访问路径new一个 SoapClient对象;2.使用__getFunctions()和__getTypes()方法来进行测试;3.设置headers;4.进行方法调用。有验证机制的webservice,需要在header里设置验证信息。设置headers部分:

/**
 * php5中调用webservice
 *
 * @param 
 * @arrange 512-笔记网: 512PiC.com
 **/
ini_set("soap.wsdl_cache_enabled", "0");//soap缓存
$soap = new SoapClient('http://localhost/webservice1.asmx?WSDL');
try
{
$param = array('AppID'=>56,'AuthKey'=>'859615585078529CC0BF092C0CAE8BCF');
//说明:第一个参数是借口中的namespace,第二个是借口中header的名称,第三个是验证参数
$header = new SoapHeader('NAMESPACE' ,'MySoapHeader', $param);
$soap->__setSoapHeaders(array($header));//添加soapheader
$param2 = array('userName'=>'','pageSize'=>10,'pageNo'=>1);
$data = $soap->__call('GetUserList',array('parameters'=>$param2));//这种调用方法是不推荐,至少我这样用是失败的
$data = $soap->GetUserList(array('parameters'=>$param2));//直接使用方法名调用
print_r($data);
}
catch(Exception $e)
{
print_r($e);
}
/***   来自php教程(www.idcnote.com)   ***/

注:关于php5调用webservice的简单示例的内容就先介绍到这里,更多相关文章的可以留意

代码注释

作者:喵哥笔记

IDC笔记

学的不仅是技术,更是梦想!