@walke

SOAP запрос с лишними тегами, как убрать ненужное?

Помогите пожалуйста, генерирую soap запрос простенький - он генерируется с ненужными строками, изабвиться от них не могу...
client = new SoapClient(null, array('location' => "address here",
                                     'uri'      => "uri here"));

 $sd1[]=array();
$sd2[]=array();
$sd3[]=array();

 $sd1[] = new SoapVar("*", XSD_STRING, null,null,"ORGANIZATIONCODE");
 $sd2[] = new SoapVar('ASSET', XSD_STRING, null,null,"EQUIPMENTCODE");
 $sd2[] = new SoapVar($sd1, SOAP_ENC_OBJECT, null,null,"ORGANIZATIONID");
 $sd3[] = new SoapVar($sd2, SOAP_ENC_OBJECT, null,null,"ASSETID");

try {
$result = $client->__soapCall("functuionname",$sd3);


На выходе получаю вот это:

<env:Envelope><env:Header>
    **header part here**
</env:Header>
<env:Body>
	<ns1:"functuionname", env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
	<param0 enc:itemType="xsd:anyType" enc:arraySize="0" xsi:type="enc:Array"/>   //Эта строка лишняя!!
		<ASSETID xsi:type="enc:Struct">
		        <BOGUS enc:itemType="xsd:anyType" enc:arraySize="0" xsi:type="enc:Array"/>    //Эта строка лишняя!!
			<EQUIPMENTCODE xsi:type="xsd:string">ASSET</EQUIPMENTCODE>
			<ORGANIZATIONID xsi:type="enc:Struct">
				<BOGUS enc:itemType="xsd:anyType" enc:arraySize="0" xsi:type="enc:Array"/>    //Эта строка лишняя!!
				<ORGANIZATIONCODE xsi:type="xsd:string">*</ORGANIZATIONCODE>
			</ORGANIZATIONID>
		</ASSETID>
	</ns1:"functuionname">
</env:Body>
</env:Envelope>


Как избавиться от лишних строк?
Спасибо!
  • Вопрос задан
  • 350 просмотров
Решения вопроса 1
@vyrkmod
Пишу на php. И не стыдно.
Ставлю свою шляпу, что в
$sd1[]=array();
$sd2[]=array();
$sd3[]=array();

квадратные скобки лишние, предполагалось просто объявить три массива, а не добавлять в каждый из них пустой массив. Ну а вывод, так понимаю, структурно соответствует вводу.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы