php在调用C#写的SOAP接口方法需要传递参数时,以下三种方法均会传递失败:
$client = new SoapClient($WSDL_URL);
1、$client->FunctionName($param1,$param2);
2、$client->__soapCall("FunctionName",array($param1,$param2));
3、$client->__soapCall("FunctionName",array("param1"=>$param1,"param2"=>$param2));
正确的方法是将参数作为二维数组来传,如下所示:
$param_ary = array( array("param1"=>$param1,"param2"=>$param2) );
$client->__soapCall("FunctionName",$param_ary);
若php调用php自己写的SOAP服务端,则无需传二维数组。
其中原因不明,待查。。。。
浙公网安备 33010602011771号