2016-03-28 2 views
0

Я хочу передать несколько индексированный массив моей службы SOAPPHP мыло индексированный массив в запросе

$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 и qty. Как я могу написать addComplexType, чтобы подойти к этому?

спасибо.

ответ

Смежные вопросы