这个wsdl该怎么使用?PHP>soapclient
程序员文章站
2022-06-04 18:30:43
...
地址:http://in.commchina.net:8071/service.asmx?WSDL
查找出函数: var_dump($soap->__getFunctions());
得到: "Login Login(LoginWrapper $parameters)"
查询函数参数:var_dump($soap->__getTypes());
得到:"struct LoginWrapper {string _xml;}"
说明书输入xml描述:
号码不能为空
密码不能为空
使用代码如下:
$arr = array(
'Param'=>array(
'Number'=>'4*******',
'Pwd'=>'********'
)
);
try{
$wsdl = 'http://in.commchina.net:8071/service.asmx?WSDL';
$soap = new SoapClient($wsdl);
$res=$soap->Login(array('_xml'=>$arr));
}catch(Exception $e){
print_r($e->getMessage(),true);
}
错误提示:服务器无法处理请求。 ---> 根级别上的数据无效。 行 1,位置 1。
查找出函数: var_dump($soap->__getFunctions());
得到: "Login Login(LoginWrapper $parameters)"
查询函数参数:var_dump($soap->__getTypes());
得到:"struct LoginWrapper {string _xml;}"
说明书输入xml描述:
使用代码如下:
$arr = array(
'Param'=>array(
'Number'=>'4*******',
'Pwd'=>'********'
)
);
try{
$wsdl = 'http://in.commchina.net:8071/service.asmx?WSDL';
$soap = new SoapClient($wsdl);
$res=$soap->Login(array('_xml'=>$arr));
}catch(Exception $e){
print_r($e->getMessage(),true);
}
错误提示:服务器无法处理请求。 ---> 根级别上的数据无效。 行 1,位置 1。
回复讨论(解决方案)
Login Login(LoginWrapper $parameters)
struct LoginWrapper {
string _xml;
}
$param = array( '_xml' => '
');
$res=$soap->Login(param);
或
$res=$soap->_call('Login', array($param));
或
$res=$soap->_soapcall('Login', array($param));
?考: http://blog.csdn.net/fdipzone/article/details/21810347
$res = $soap->Login($param);
或
$res = $soap-> __soapCall('Login', array($param));