по примерам сделал вот такой код:
<?php
$wsdl = "http://91.218.87.193:18080/bgbilling/api/ru.gigacoms.bgbilling.service/ContractService?wsdl";
$client = new SoapClient($wsdl);
$answer = $client->__SoapCall("getBalanceData", array(new SoapParam ((String)'74955405428', 'arg0'), new SoapParam((String)'002000000', 'arg1'),
));
//var_dump ($client);
var_dump ($answer);
$code=$answer->return->code;
echo $code;
?>
в итоге tcpdump показывает вот такой пакет:
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="gigacoms"><SOAP-ENV:Body><ns1:getBalanceData/><arg1>002000000</arg1></SOAP-ENV:Body></SOAP-ENV:Envelope>
т.е. куда то делся параметр arg0
и на выходе получаем логичный вывод от сервиса:
object(stdClass)#4 (1) {
["return"]=>
object(stdClass)#5 (2) {
["code"]=>
int(2)
["status"]=>
int(0)
}
}
а через soapUI:
запрос:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:gig="gigacoms">
<soapenv:Header/>
<soapenv:Body>
<gig:getBalanceData>
<!--Optional:-->
<arg0>74955405428</arg0>
<!--Optional:-->
<arg1>002000000</arg1>
</gig:getBalanceData>
</soapenv:Body>
</soapenv:Envelope>
ответ:
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
<S:Body>
<ns2:getBalanceDataResponse xmlns:ns2="gigacoms">
<return>
<code>0</code>
<status>0</status>
<summa>111.00</summa>
</return>
</ns2:getBalanceDataResponse>
</S:Body>
</S:Envelope>
помогите сделать тоже самое на php.