使用SimpleXML对XML的SOAP响应

nta*_*tan 4 php xml soap simplexml

我试图将SOAP响应转换为XML.

SOAP有一个信封和一个身体

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Body>
Run Code Online (Sandbox Code Playgroud)

当我尝试转换

$responseXML = simplexml_load_string($string);
Run Code Online (Sandbox Code Playgroud)

我明白了

object(SimpleXMLElement)#20 (0) { } 
Run Code Online (Sandbox Code Playgroud)

如果我编辑$stringas soap:Envelope,soap:Body我就可以获得XML.

怎么了:?无法获取XML.

我希望它很清楚.任何人?

Guf*_*ffa 9

SOAP消息已经 XML.问题是它有名称空间,因此您必须以不同方式访问它.(冒号前面的部分是命名空间的标识符.)

这里(谷歌缓存副本)是使用SimpleXML命名空间的示例.
以下是读取SOAP消息的具体示例.