我目前在我的nussoap服务器文件中使用以下内容:
$server->wsdl->addComplexType(
'member',
'complexType',
'struct',
'all',
'',
array(
'ID' => array('MemberInfo' => 'ID', 'type' => 'xsd:int'),
'FIRST_NAME' => array('MemberInfo' => 'FIRST_NAME', 'type' => 'xsd:string'),
'LAST_NAME' => array('MemberInfo' => 'LAST_NAME', 'type' => 'xsd:string')
)
返回:
<ID xsi:type="xsd:int">1</ID>
<FIRST_NAME xsi:type="xsd:string">John</FIRST_NAME>
<LAST_NAME xsi:type="xsd:string">Doe</LAST_NAME>
我如何修改它以接收以下输出:
<ID xsi:type="xsd:int">1</ID>
<NAME>
<FIRST_NAME xsi:type="xsd:string">John</FIRST_NAME>
<LAST_NAME xsi:type="xsd:string">Doe</LAST_NAME>
</NAME>
实现此目的的方法是在响应数据类型中包含单个条目,其中包含用于包装器的数组:
'ID' => array('MemberInfo' => 'ID', 'type' => 'xsd:int'),
'NAME' => array('NAME' => array('NAME', 'type' => 'xsd:string'))
然后将名称信息存储在子数组
中return array (
'ID' => $user_info->ID,
'NAME' => array(
'FIRST_NAME' => $user_info->first_name,
'LAST_NAME' => $user_info->last_name,
)
)