请求中的php soap索引数组

请求中的php soap索引数组,php,soap,wsdl,nusoap,Php,Soap,Wsdl,Nusoap,我想将多个索引数组传递给我的SOAP服务 $params = array( 'Stuffs' => array( 'stuffsArray' => array( array('itemid' => 100, 'qty' => 2), array('itemid' => 101, 'qty' => 1), array('itemid' => 102, 'qty'

我想将多个索引数组传递给我的SOAP服务

$params = array(
    'Stuffs' => array(
        'stuffsArray' => array(
            array('itemid' => 100, 'qty' => 2),
            array('itemid' => 101, 'qty' => 1),
            array('itemid' => 102, 'qty' => 3)
        )
    )
);
我的nuSOAP脚本看起来像

$server->wsdl->addComplexType(
    'Stuffs',
    'complexType',
    'struct',
    'all',
    '',
    array(
        'itemid' => array(
            'name' => 'itemid',
            'type' => 'xsd:int'
        ),
        'qty' => array(
            'name' => 'qty',
            'type' => 'xsd:int'
        )
    )
); 
$server->wsdl->addComplexType(
    'StuffsArray',
    'complexType',
    'array',
    '',
    'SOAP-ENC:Array',
    array(),
    array(
        array(
            'ref' => 'SOAP-ENC:arrayType',
            'wsdl:arrayType' => 'tns:Stuffs[]'
        )
    ),
    'tns:Stuffs'
);
$server->wsdl->addComplexType(
    'req',
    'complexType',
    'struct',
    'all',
    '',
    array(
        'Stuffs' => array('name' => 'Stuffs', 'type' => 'tns:StuffsArray')
    )
);
在生成WSDL的地方,我只能传递数组stuffsArray中的一个元素以获得响应

$params = array(
    'Stuffs' => array(
        'stuffsArray' => array(
            'itemid' => 100, 'qty' => 2
        )
    )
);
但我需要在stuffsArray中传递多个数据,itemid和Quantity的许多值。 如何编写addComplexType来实现这一点


谢谢。

本教程帮助我解决问题