По сути, создание клиента SOAP, и часть необходимого ввода отформатирована следующим образом:
<Attributes>
<Attribute>
<AttributeType>HomeType</AttributeType>
<Value>duplex</Value>
</Attribute>
<Attribute>
<AttributeType>Bedrooms</AttributeType>
<Value>2</Value>
</Attribute>
<Attribute>
<AttributeType>Bathrooms</AttributeType>
<Value>2</Value>
</Attribute>
</Attributes>
Это размещено через массив:
$homeType = array (
'AttributeType' => 'HomeType',
'Value' => $_POST['hometype']
);
$bedrooms = array (
'AttributeType' => 'Bedrooms',
'Value' => $_POST['bedrooms']
);
$bathrooms = array(
'AttributeType' => 'Bathrooms',
'Value' => $_POST['bathrooms']
);
$attributes = array (
'Attribute' => $homeType,
'Attribute' => $bedrooms,
'Attribute' => $bathrooms
);
И, как вы можете себе представить, все возвращаемые массивы - это последний атрибут, поэтому xml выглядит так:
<Attributes>
<Attribute>
<AttributeType>Bathrooms</AttributeType>
<Value>2</Value>
</Attribute>
</Attributes>
Я не могу придумать никакого практического способа обойти это, поскольку Атрибуты могут насчитывать до 30-50, поэтому я не хочу численно их кодировать, тем более что массив называется только:
'Attributes' => $attributes,
Любая помощь будет высоко ценится!