我使用 PHP SoapServer 在非 wsdl 模式下工作。我将服务器设置为处理数据并使用 setClass() 返回响应。我尝试返回一个关联数组,但这会转化为带有项目、键和值的 SOAP 映射。我想回复以下内容:
<soap:Body>
<AsyncResponseOperationResponse xmlns="http://www.sample.com/">
<AsyncResponseOperationResult>
<Succeeded>true</Succeeded>
<Comments>
The operation was a success
</Comments>
</AsyncResponseOperationResult>
</AsyncResponseOperationResponse>
</soap:Body>
变量将是成功是真还是假,以及评论。
我一直在尝试阅读有关“typemap”选项的信息,但它的文档记录不是很好,到目前为止我发现的内容只会让我更加困惑。到目前为止我找到的资源是 php 单元测试,比如这个和这个,以及这个 stackoverflow 问题
谁能给我一个例子来做我想做的事情?我想我可以通过自动发现(使用 Zend 的 Soap 服务器)切换到 wsdl 模式,如果这是一个解决方案的话。
编辑:在我弄清楚如何以正确的方式做之前,我只是手动写出所有的 XML。
header("Content-type: text/xml");
echo "<?xml version="1.0" encoding="utf-8"?><soap:Envelope ...