Добавление необязательных параметров в вызов SOAP в PHP - PullRequest
1 голос
/ 26 ноября 2010

Формат моего SOAP-вызова должен быть:

<?xml version="1.0" encoding="UTF-8"?>  
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://tempuri.org/">  
<SOAP-ENV:Body>  
    <ns1:FunctionName>  
        <ns1:HostUserName>hostuser</ns1:HostUserName>  
        <ns1:HostPassword>pass</ns1:HostPassword>  
        <ns1:OwnerName>owner</ns1:OwnerName>  
        <ns1:UserName>user</ns1:UserName>  
        <ns1:OptionalParam>  
            <ns1:Parameters>  
                <ns1:Parameter Name="FirstName">First<ns1:/Parameter>  
                <ns1:Parameter Name="LastName">Last<ns1:/Parameter>  
            <ns1:/Parameters>  
        </ns1:OptionalParam>  
<ns1:/FunctionName>  
</SOAP-ENV:Body>  

Как мне представить это в запросе PHP? Я строю запрос так:

    $client = new SoapClient($url,array('trace' => 1)); 
    $data['HostUserName']=$this->hostname;
    $data['HostPassword']=$this->hostpassword;
    $data['OwnerName']=$this->ownername;
    $data['UserName']=$username;
    $data['FirstName']=$FirstName;
    $data['LastName']=$LastName;
    $result = $client->FunctionName($data);

Я пробовал несколько комбинаций строительных массивов, SOAPVAR и SOAPPARAM, но ничего не помогло. Целевой SOAP-сервер основан на .NET.

Есть предложения?

Спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...