1--TEST-- 2SOAP Interop Round2 base 015 (soap/direct): echoStructArray 3--SKIPIF-- 4<?php require_once('skipif.inc'); ?> 5--INI-- 6precision=14 7--FILE-- 8<?php 9class SOAPStruct { 10 function __construct($s, $i, $f) { 11 $this->varString = $s; 12 $this->varInt = $i; 13 $this->varFloat = $f; 14 } 15} 16 17$struct1 = new SoapVar(array( 18 new SoapVar('arg', XSD_STRING, null, null, 'varString'), 19 new SoapVar('34', XSD_INT, null, null, 'varInt'), 20 new SoapVar('325.325', XSD_FLOAT, null, null, 'varFloat') 21 ),SOAP_ENC_OBJECT,"SOAPStruct","http://soapinterop.org/xsd"); 22$struct2 = new SoapVar(array( 23 new SoapVar('arg', XSD_STRING, null, null, 'varString'), 24 new SoapVar('34', XSD_INT, null, null, 'varInt'), 25 new SoapVar('325.325', XSD_FLOAT, null, null, 'varFloat') 26 ),SOAP_ENC_OBJECT,"SOAPStruct","http://soapinterop.org/xsd"); 27 28$param = new SoapParam(new SoapVar(array( 29 $struct1, 30 $struct2 31 ),SOAP_ENC_ARRAY,"ArrayOfSOAPStruct","http://soapinterop.org/xsd"), "inputStructArray"); 32$client = new SoapClient(NULL,array("location"=>"test://","uri"=>"http://soapinterop.org/","trace"=>1,"exceptions"=>0)); 33$client->__soapCall("echoStructArray", array($param), array("soapaction"=>"http://soapinterop.org/","uri"=>"http://soapinterop.org/")); 34echo $client->__getlastrequest(); 35$HTTP_RAW_POST_DATA = $client->__getlastrequest(); 36include("round2_base.inc"); 37echo "ok\n"; 38?> 39--EXPECT-- 40<?xml version="1.0" encoding="UTF-8"?> 41<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://soapinterop.org/" xmlns:ns2="http://soapinterop.org/xsd" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"><SOAP-ENV:Body><ns1:echoStructArray><inputStructArray SOAP-ENC:arrayType="ns2:SOAPStruct[2]" xsi:type="ns2:ArrayOfSOAPStruct"><item xsi:type="ns2:SOAPStruct"><varString xsi:type="xsd:string">arg</varString><varInt xsi:type="xsd:int">34</varInt><varFloat xsi:type="xsd:float">325.325</varFloat></item><item xsi:type="ns2:SOAPStruct"><varString xsi:type="xsd:string">arg</varString><varInt xsi:type="xsd:int">34</varInt><varFloat xsi:type="xsd:float">325.325</varFloat></item></inputStructArray></ns1:echoStructArray></SOAP-ENV:Body></SOAP-ENV:Envelope> 42<?xml version="1.0" encoding="UTF-8"?> 43<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://soapinterop.org/" xmlns:ns2="http://soapinterop.org/xsd" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"><SOAP-ENV:Body><ns1:echoStructArrayResponse><outputStructArray SOAP-ENC:arrayType="ns2:SOAPStruct[2]" xsi:type="ns2:ArrayOfSOAPStruct"><item xsi:type="ns2:SOAPStruct"><varString xsi:type="xsd:string">arg</varString><varInt xsi:type="xsd:int">34</varInt><varFloat xsi:type="xsd:float">325.325</varFloat></item><item xsi:type="ns2:SOAPStruct"><varString xsi:type="xsd:string">arg</varString><varInt xsi:type="xsd:int">34</varInt><varFloat xsi:type="xsd:float">325.325</varFloat></item></outputStructArray></ns1:echoStructArrayResponse></SOAP-ENV:Body></SOAP-ENV:Envelope> 44ok 45