2013-05-22 2 views
0

Моя проблема кажется очень простой, но я просто не могу найти решение.Добавление simpleContent с использованием nusoap

Я использую NuSOAP для веб-сервиса, и мне нужно, чтобы получить структуру, как это (от PHP arrray):

<ns0:measurementUnitList> 
     <ns0:measurementUnit type="type1">type1.value</ns0:measurementUnit> 
     <ns0:measurementUnit type="type2">type1.value</ns0:measurementUnit> 
</ns0:measurementUnitList> 

XSD из милиции выглядит следующим образом:

<xsd:complexType name="measurementUnit"> 
     <xsd:simpleContent> 
      <xsd:extension base="xsd:string"> 
       <xsd:attribute name="type" type="xsd:string" use="required" >      
       </xsd:attribute> 
      </xsd:extension> 
     </xsd:simpleContent> 
</xsd:complexType> 

... и проблематичная часть массива php выглядит следующим образом:

[measurementUnitList] => Array(
    [measurementUnit] => Array 
    (
     [0] => Array 
     (
      [type] => type1 
      [unit] => type1.value 
     ) 

     [1] => Array 
     (
      [type] => type2 
      [unit] => type2.value 
     ) 

    ) 

) 

В этом примере должен быть сгенерирован атрибут типа из элемента «type» типа php, а контент должен поступать из одного элемента «unit» одного и того же php-массива.

Проблема заключается в том, что в любом случае я пытаюсь поставить «блок» в содержимое элемента, библиотека генерирует новый элемент «блок» в элемент «measurementUnit» с этим содержанием, например:

<ns1:measurementUnitList> 
    <ns1:measurementUnit type="type1"> 
     <ns1:unit>type1.value</ns1:unit> 
    </ns1:measurementUnit> 
    <ns1:measurementUnit type="type2"> 
     <ns1:unit>type2.value</ns1:unit> 
    </ns1:measurementUnit> 
</ns1:measurementUnitList> 

Поэтому я просто не могу понять, как просто использовать значение без каких-либо дополнительных тегов.

Спасибо за помощь!

ответ

0

Попробуйте

[measurementUnitList] => Array(
    [measurementUnit] => Array 
    (
     [0] => Array 
     (
      [type] => type1 
      [!] => type1.value 
     ) 

     [1] => Array 
     (
      [type] => type2 
      [!] => type2.value 
     ) 

    ) 

)