1

我正在开发一个 Web 服务集成项目。现在,使用 cURL 方法传递请求并获得 XML 响应。我没有保存 XML 响应文件,而是在我的页面中回显了 XML 响应(认为它会节省服务器响应时间)。现在我在我的页面中得到了这样的 XML 响应,

<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" >
<SOAP-ENV:Body>
   <CreateShipmentReply xmlns="http://www.parcelforce.net/ws/ship/v5">
     <CompletedShipmentInfo>    
         <Status>ALLOCATED</Status>
      <CompletedShipments>
        <CompletedShipment>
            <ShipmentNumber>MK0030912</ShipmentNumber>
        </CompletedShipment>
      </CompletedShipments>
      <RequestedShipment>
        <DepartmentId>1</DepartmentId>
        <ShipmentType>DELIVERY</ShipmentType>
        <ContractNumber>P664383</ContractNumber>
        <ServiceCode>SUP</ServiceCode>
        <ShippingDate>2012-05-25</ShippingDate>
        <RecipientContact>
           <BusinessName>BUSINESS NAME</BusinessName>

为了将 XML 中的数据保存到我的数据库/表中,我需要从节点中解析它。我有从保存的文件中解析 XML 的代码,但在回显的 XML 响应中找不到相同的解决方案。如何从回显的 XML 响应中读取数据。

需要帮忙。提前致谢。

4

2 回答 2

1

要使用 XML,请使用DOM PHP 类。它很容易理解并且非常强大。

只需通过以下方式加载您的响应 XML:

$dom = new DOMDocument;

$dom->loadXML($responsestring);

然后你可以通过 DOMDocument 方法做任何你想做的操作 DOM。

于 2012-05-25T09:43:36.497 回答
0

您可能想阅读SimpleXML,它可以让您将 xml 文档转换为对象,使它们更易于阅读和操作。IE

$xml_object = new SimpleXMLElement($xmlstr);

于 2012-05-25T09:39:59.053 回答