使用PHP解析复杂的SOAP XML响应

时间:2016-03-18 07:02:13

标签: php dom soap xml-parsing simplexml

我使用phpcURL来处理SOAP请求方法,我收到了以下响应。看起来它与我在谷歌上阅读和搜索使用php(simpleXML& DOM)处理xml响应的内容有点不同和复杂。

<?xml version='1.0' encoding='UTF-8'?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Body>
    <as:QueryResultMsg 
        xmlns:as="http://www.as.com/as" 
        xmlns:ac="http://www.ac.com/ac" 
        xmlns:cs="http://www.cs.com/cs">
        <ResultHeader>
            <cs:Version>1</cs:Version>
            <cs:Result>Success.</cs:Result>
        </ResultHeader>
        <QueryResult>
            <as:List>
                <as:Key>4000020023983</ars:Key>
                <as:Result>
                    <ac:Type>TYPE</ac:Type>
                    <ac:TypeName>Account_Type_Name</ac:TypeName>
                    <ac:TotalAmount>200000</ac:TotalAmount>
                    <ac:Detail>
                        <ac:InstanceID>03610</ac:InstanceID>
                        <ac:Amount>200000</arc:Amount>
                        <ac:InitialAmount>0</arc:InitialAmount>
                    </ac:Detail>
                </as:Result>
                <as:AccountCredit>
                    <as:CreditAmount>5000</as:CreditAmount>
                </as:AccountCredit>
            </as:List>
        </QueryResult>
    </as:QueryResultMsg>
</soapenv:Body>

如果您可以分享我如何显示以下TagElements: - 1)TypeName 2)TotalAmount 3)InitialAmount 4)CreditAmount

在这种情况下哪一个是更好的解析器SimpleXml of Dom。

1 个答案:

答案 0 :(得分:0)

您可以在PHP中使用simplexml_load_string

您可以参考此问题PHP Parsing SOAP response