使用PHP SOAP服务器获取可变数量的参数

时间:2013-03-20 17:07:39

标签: php xml soap soapserver

我正在开发一个简单的PHP SOAP服务器,它接收如下所示的请求:

<SOAP-ENV:Body>
     <myFunction>
         <arg1>arg1_value</arg1>
         <arg2>
             <id>3027</id>
             <id>1043</id>
             <id>827</id>
         </arg2>
     </myFunction>
 </SOAP-ENV:Body>

第一个参数(arg1)是必需的,第二个参数(arg2)是可选的,由零,一个或多个元素'id'组成,如图所示。

我可以这样访问arg1值:

public function myFunction($args){
    $value = $args->arg1;
}

PHP中获取元素arg2中所有不同'id'参数的最佳方法是什么?

编辑:

在我的WSDL文件中,我有类似的东西:

    <xsd:element name="myFunction">
        <xsd:complexType>
            <xsd:sequence>
                    <xsd:element name="arg1" minOccurs="1" maxOccurs="1" type="xsd:string"></xsd:element>
                    <xsd:element name="arg2" type="tns:multiple_ids" minOccurs="0" maxOccurs="1" />
            </xsd:sequence>
        </xsd:complexType>
    </xsd:element>

    <xsd:complexType name="multiple_ids">
        <xsd:sequence>
            <xsd:element name="id" type="xsd:string" minOccurs="0" maxOccurs="unbounded" />
        </xsd:sequence>
    </xsd:complexType>

0 个答案:

没有答案