Многомерный ассоциативный массив как ответ в NuSOAP

У меня есть некоторые проблемы с ответом в SOAP. Вообще не могу понять, как получить ответ в виде многомерного ассоциативного массива для моего SOAP-клиента. Я использовал библиотеку NuSOAP v 1.123.

Итак, у меня есть этот код в SOAP-сервере:

$server->wsdl->addComplexType(
    'ReturnDataInside',
    'complexType',
    'struct',
    'all',
    '',
    array(
        'message'               => array('name' => 'message', 'type' => 'xsd:string', 'nillable' => 'true'),
        'value' => array('name' => 'value', 'type' => 'xsd:string', 'nillable' => 'true'),
    )
);

$server->wsdl->addComplexType(
    'ReturnDataOutside',
    'complexType',
    'array',
    'all',
    '',
    array(),
    array(),
    'tns:ReturnDataInside'
);

$server->register('test',
    array('param_1' => 'xsd:int', 'param_2' => 'xsd:string'),
    array('return' => 'tns:ReturnDataOutside')
);

function test($param_1, $param_2)
{
    $data = array(
        'test' => array(
            'message'               => 'string',
            'value'                 => 'string',
        ),
    );

    return $data;
}

Мой ответ выглядит так:

Array
(
    [0] => Array
        (
            [message] => string
            [value] => string
        )

)

Так что изменить, чтобы получить "тест" в качестве ключа в моем ответе m.array?

1 ответ

Решение

Прежде всего тело моей функции было неверным.

$data[] = array(
'message' => 'string',
'value' => 'string',
);

И ответ на мой вопрос: мыло не отправляет ключи для многомерных массивов.

Другие вопросы по тегам