SimpleXML SOAP响应命名空间问题

SimpleXML SOAP响应命名空间问题,第1张

SimpleXML SOAP响应命名空间问题

您必须使用

SimpleXMLElement::children()
,尽管此时使用XPath可能会更容易。

<?php    $XmlStr = <<<XML<?xml version="1.0" encoding="UTF-8"?><env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"  xmlns:ns1="http://soap.xxxxxx.co.uk/" >    <env:Body>        <ns1:PlaceOrderResponse> <xxxxxOrderNumber></xxxxxOrderNumber> <ErrorArray>     <Error>         <ErrorCode>24</ErrorCode>         <ErrorText>The+client+order+number+3002254+is+already+in+use</ErrorText>     </Error>     <Error>         <ErrorCode>1</ErrorCode>         <ErrorText>Aborting</ErrorText>     </Error> </ErrorArray>        </ns1:PlaceOrderResponse>    </env:Body></env:Envelope>XML;    $XmlArray   = new SimpleXMLElement($XmlStr);    $t = $XmlArray->children("env", true)->Body->        children("ns1", true)->PlaceOrderResponse->        children()->ErrorArray->Error;    foreach ($t as $error) {        echo $error->ErrorCode, " " , $error->ErrorText, "<br />";    }

给出

24 +客户+订单+号码+ 3002254 +已+已使用+1堕胎


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/5441482.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-12-11
下一篇2022-12-11

发表评论

登录后才能评论

评论列表(0条)

    保存