How to send an array of complex type in PHP using Soap_Client?
        Posted  
        
            by xaguilars
        on Stack Overflow
        
        See other posts from Stack Overflow
        
            or by xaguilars
        
        
        
        Published on 2010-04-09T15:20:28Z
        Indexed on 
            2010/04/09
            15:23 UTC
        
        
        Read the original article
        Hit count: 346
        
Hello I want to know how to send this array of complex data to a SOAP server (that uses .NET / IIS).
    <xs:complexType name="SampleStruct">
        <xs:sequence>
            <xs:element name="title" type="xs:string"/>
            <xs:element name="description" type="xs:string"/>
        </xs:sequence>
    </xs:complexType>   
     <xs:complexType name="SampleStruct_Array">
          <xs:complexContent>
           <xs:restriction base="soapenc:Array">
             <xs:sequence/>
             <xs:attribute ref="soapenc:arrayType" n1:arrayType="ns1:SampleStruct[]"/>
           </xs:restriction>
          </xs:complexContent>
        </xs:complexType>
Would this code be ok? :
$data1 = new SampleStruct();
$data1->title="Hello world";
$data1->description="This is a sample description.";
$data2 = new SampleStruct();
$data2->title="Hello world 2";
$data2->description="This is a sample description 2.";
$client->__soapCall("sampleFunction", array(
   new SoapParam(new SoapVar(array($data1, $data2) , SOAP_ENC_ARRAY, "SampleStruct_Array", "http://www.w3.org/2001/XMLSchema"), "theSampleFunctionParamName")
));
Am I doing it ok? I'm not very familiar with Web services...
Thank you
© Stack Overflow or respective owner