我需要根据 WSDL 返回 SOAP 调用应答。一切正常,除了返回 xsd:any 元素。WSDL 的一部分,我遇到了问题(这是预期的答案)。
xsd:complexType 名称="数据"
xsd:序列
xsd:any minOccurs="1" maxOccurs="unbounded"
xsd:序列
xsd:complexType
我尝试了什么:
foreach($data as $name=>$value) {
$object->data->any[$name] = $value;
}
返回$对象;
SOAP 调用返回如下答案:
..响应>
-数据>值1值2值3值4-/数据>
.../响应>
尽管在返回对象之前,可以看到对象已按应有的方式创建:
$object->data->any[name1] = value1
$object->data->any[name2] = value2
ETC...
但是在 return asnwer 中,所有的值都只是放入一个字符串到一个返回字段中。此代码和返回适用于任何其他字段类型(例如 xsd:string 等)。
在 xsd:any 类型的情况下如何返回对象,以根据名称和值获得多个字段的答案?
谢谢