如何访问ComplexType变量

时间:2013-07-23 09:33:02

标签: php web-services soap wsdl

我有一个WSDL,有些变量发给我, 但我不知道以哪种方式访问​​它们....

我需要的WSDL部分如下所示:

<s:element name="SaveRelation">
   <s:complexType>
      <s:sequence>
         <s:element minOccurs="0" maxOccurs="1" name="persistance" type="tns:Relation"/>
      </s:sequence>
   </s:complexType>
</s:element>

<s:complexType name="Relation">
   <s:sequence>
      <s:element minOccurs="1" maxOccurs="1" name="GUID" type="s1:guid"/>
      <s:element minOccurs="1" maxOccurs="1" name="ParentRelation" nillable="true" type="s1:guid"/>
      <s:element minOccurs="0" maxOccurs="1" name="RelationName" type="s:string"/>
      <s:element minOccurs="1" maxOccurs="1" name="VisitAddress" nillable="true" type="s1:guid"/>
      <s:element minOccurs="1" maxOccurs="1" name="DeliveryAddress" nillable="true" type="s1:guid"/>
      <s:element minOccurs="1" maxOccurs="1" name="Person_1" nillable="true" type="s1:guid"/>
      <s:element minOccurs="1" maxOccurs="1" name="Person_2" nillable="true" type="s1:guid"/>
      <s:element minOccurs="1" maxOccurs="1" name="Person_3" nillable="true" type="s1:guid"/>
      <s:element minOccurs="1" maxOccurs="1" name="Person_4" nillable="true" type="s1:guid"/>
      <s:element minOccurs="0" maxOccurs="1" name="Country" type="s:string"/>
      <s:element minOccurs="0" maxOccurs="1" name="ChamberOfCommerceNumber" type="s:string"/>
      <s:element minOccurs="0" maxOccurs="1" name="VatNumber" type="s:string"/>
      <s:element minOccurs="0" maxOccurs="1" name="Fax" type="s:string"/>
      <s:element minOccurs="0" maxOccurs="1" name="Telephone" type="s:string"/>
      <s:element minOccurs="0" maxOccurs="1" name="InternetAddress" type="s:string"/>
      <s:element minOccurs="0" maxOccurs="1" name="E_mail" type="s:string"/>
      <s:element minOccurs="1" maxOccurs="1" name="Obsolete" type="s:boolean"/>
   </s:sequence>
</s:complexType>

<wsdl:message name="SaveRelationSoapIn">
   <wsdl:part name="parameters" element="tns:SaveRelation"/>
</wsdl:message>

这些变量被发送到我的服务器,我需要处理它们并将它们放在数据库中,然后根据成功或失败返回ok / fail。 我已经完成了所有工作,接受访问变量。

我尝试了$parameters.GUID , $parameters[0][0], $parameters[0].GUID之类的东西,第一个返回ArrayGUID,第二个返回空/空,第三个也没有返回/空。

总而言之,我不知道如何访问Relation ComplexType中的变量。

1 个答案:

答案 0 :(得分:2)

您是否尝试过var_dump()来自服务的响应?如果可以看到响应数据的结构,则应该能够确定如何到达值。