0

我有以下 XML 字符串。我想从此 XML 中获取特定结果,该结果通过选择动态更改。

<response uri="/crm/private/xml/Campaigns/getMyRecords">
  <result>
    <Campaigns>
      <row no="1">
        <FL val="CAMPAIGNID">536661000000249003</FL>
        <FL val="SMOWNERID">536661000000051003</FL>
        <FL val="Campaign Owner">
          <![CDATA[gunjan.sharma]]>
        </FL>
        <FL val="Campaign Name">
          <![CDATA[Test Campaign]]>
        </FL>
        <FL val="Status">
          <![CDATA[Active]]>
        </FL>
        <FL val="Expected Revenue">
          <![CDATA[0]]>
        </FL>
        <FL val="Budgeted Cost">
          <![CDATA[0]]>
        </FL>
        <FL val="Actual Cost">
          <![CDATA[0]]>
        </FL>
        <FL val="SMCREATORID">536661000000051003</FL>
        <FL val="Created By">
          <![CDATA[gunjan.sharma]]>
        </FL>
        <FL val="MODIFIEDBY">536661000000051003</FL>
        <FL val="Modified By">
          <![CDATA[gunjan.sharma]]>
        </FL>
        <FL val="Created Time">
          <![CDATA[2012-05-14 20:33:56]]>
        </FL>
        <FL val="Modified Time">
          <![CDATA[2012-05-14 20:33:56]]>
        </FL>
        <FL val="Campaign No">
          <![CDATA[TCam002]]>
        </FL>
        <FL val="Campaigns Source">
          <![CDATA[Share Junction]]>
        </FL>
      </row>
      <row no="2">
        <FL val="CAMPAIGNID">536661000000198011</FL>
        <FL val="SMOWNERID">536661000000051003</FL>
        <FL val="Campaign Owner">
          <![CDATA[gunjan.sharma]]>
        </FL>
        <FL val="Campaign Name">
          <![CDATA[Share Junction]]>
        </FL>
        <FL val="Status">
          <![CDATA[Active]]>
        </FL>
        <FL val="Expected Revenue">
          <![CDATA[0]]>
        </FL>
        <FL val="Budgeted Cost">
          <![CDATA[0]]>
        </FL>
        <FL val="Actual Cost">
          <![CDATA[0]]>
        </FL>
        <FL val="SMCREATORID">536661000000051003</FL>
        <FL val="Created By">
          <![CDATA[gunjan.sharma]]>
        </FL>
        <FL val="MODIFIEDBY">536661000000051003</FL>
        <FL val="Modified By">
          <![CDATA[gunjan.sharma]]>
        </FL>
        <FL val="Created Time">
          <![CDATA[2012-05-07 21:43:33]]>
        </FL>
        <FL val="Modified Time">
          <![CDATA[2012-05-07 21:43:33]]>
        </FL>
        <FL val="Campaign No">
          <![CDATA[CAM01]]>
        </FL>
        <FL val="Campaigns Source">
          <![CDATA[Share Junction]]>
        </FL>
      </row>
    </Campaigns>
  </result>
</response>

我想获得 Campaign No = CAM01 的行。我怎样才能?


我只想运行这种类型的查询

从 Campaign No = '$val' 的 Campaigns 中选择 CAMPAIGNID


或将其转换为数组


是否可以?

4

2 回答 2

1

我希望链接可以帮助你

1. 使用 PHP DOM 构建动态 XML 文档

2. 用 PHP 解析 XML

于 2012-05-16T06:17:58.747 回答
0

以下是要做的事情,只需几个步骤:

  1. 加载 XML 文件
  2. 获取第一个元素的名称
  3. 使用 children() 函数创建一个将在每个子节点上触发的循环
  4. 输出每个子节点的元素名称和数据

使用简单 XML 提取数据的示例代码如下,

<?php
 $xml = simplexml_load_file("test.xml");

 echo $xml->getName() . "<br />";

 foreach($xml->children() as $child)
 {
  echo $child->getName() . ": " . $child . "<br />";
 }
?> 

这应该可以帮助您检索数据。谢谢。

于 2012-05-16T06:53:43.263 回答