使用 DomDocument 在 foreach 之后访问 XML

苏加玛·文卡特桑

我正在使用 DomDocument 访问 XML 数据,但我无法访问。

    $xmlstring =<<<XML
    <CcyTbl>
    <CcyNtry>
    <CtryNm>AFGHANISTAN</CtryNm>
    <CcyNm>Afghani</CcyNm>
    <Ccy>AFN</Ccy>
    <CcyNbr>971</CcyNbr>
    <CcyMnrUnts>2</CcyMnrUnts>
    </CcyNtry>
    <CcyNtry>
    <CtryNm>ÅLAND ISLANDS</CtryNm>
    <CcyNm>Euro</CcyNm>
    <Ccy>EUR</Ccy>
    <CcyNbr>978</CcyNbr>
    <CcyMnrUnts>2</CcyMnrUnts>
    </CcyNtry>
    <CcyNtry>
    <CtryNm>ALBANIA</CtryNm>
    <CcyNm>Lek</CcyNm>
    <Ccy>ALL</Ccy>
    <CcyNbr>008</CcyNbr>
    <CcyMnrUnts>2</CcyMnrUnts>
    </CcyNtry>
    <CcyNtry>
    <CtryNm>ALGERIA</CtryNm>
    <CcyNm>Algerian Dinar</CcyNm>
    <Ccy>DZD</Ccy>
    <CcyNbr>012</CcyNbr>
    <CcyMnrUnts>2</CcyMnrUnts>
    </CcyNtry>
    <CcyNtry>
    <CtryNm>AMERICAN SAMOA</CtryNm>
    <CcyNm>US Dollar</CcyNm>
    <Ccy>USD</Ccy>
    <CcyNbr>840</CcyNbr>
    <CcyMnrUnts>2</CcyMnrUnts>
    </CcyNtry>
    </CcyTbl>
    XML;
    $doc = new DOMDocument('1.0', 'UTF-8');
    $doc->loadXML( utf8_encode($xmlstring));
    $countries = $doc->getElementsByTagName('CcyNtry');
    foreach($countries as $country){
    print_r($country->nodeValue);die();

    }

由此可见

AFGHANISTAN Afghani AFN 971 2

但我想访问单个项目,如 CtryNm、CcyNm、Ccy

我试图访问

    $doc = new DOMDocument('1.0', 'UTF-8');
    $doc->loadXML( utf8_encode($xmlstring));
    $countries = $doc->getElementsByTagName('CcyNtry');
    foreach($countries as $country){
      echo $country->CtryNm;die();

    }

未定义的属性:DOMElement::$CtryNm

试试这个。从下面您可以访问 XML 中的所有元素

$simple = "<CcyTbl>
<CcyNtry>
<CtryNm>AFGHANISTAN</CtryNm>
<CcyNm>Afghani</CcyNm>
<Ccy>AFN</Ccy>
<CcyNbr>971</CcyNbr>
<CcyMnrUnts>2</CcyMnrUnts>
</CcyNtry>
<CcyNtry>
<CtryNm>ÅLAND ISLANDS</CtryNm>
<CcyNm>Euro</CcyNm>
<Ccy>EUR</Ccy>
<CcyNbr>978</CcyNbr>
<CcyMnrUnts>2</CcyMnrUnts>
</CcyNtry>
<CcyNtry>
<CtryNm>ALBANIA</CtryNm>
<CcyNm>Lek</CcyNm>
<Ccy>ALL</Ccy>
<CcyNbr>008</CcyNbr>
<CcyMnrUnts>2</CcyMnrUnts>
</CcyNtry>
<CcyNtry>
<CtryNm>ALGERIA</CtryNm>
<CcyNm>Algerian Dinar</CcyNm>
<Ccy>DZD</Ccy>
<CcyNbr>012</CcyNbr>
<CcyMnrUnts>2</CcyMnrUnts>
</CcyNtry>
<CcyNtry>
<CtryNm>AMERICAN SAMOA</CtryNm>
<CcyNm>US Dollar</CcyNm>
<Ccy>USD</Ccy>
<CcyNbr>840</CcyNbr>
<CcyMnrUnts>2</CcyMnrUnts>
</CcyNtry>
</CcyTbl>";
echo "<pre>";
print_r(new SimpleXMLElement($simple));

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在PHP上使用DOMDocument进行foreach循环

来自分类Dev

如何使用DOMDocument更改xml源

来自分类Dev

使用php domdocument在xml中添加doctype

来自分类Dev

使用DOMDocument删除php中的XML元素

来自分类Dev

使用domDocument在PHP中进行XML解析

来自分类Dev

使用php domdocument在xml中添加doctype

来自分类Dev

PHP如何使用 带有DOMdocument的XML中的实体

来自分类Dev

使用PHP中的DOMDocument编辑XML元素的新属性

来自分类Dev

使用domdocument在两个XML元素内编写

来自分类Dev

在XML上使用DOMDocument Validate()会导致无限负载

来自分类Dev

使用DOMDocument修改XML文档正在对XML进行不必要的更改

来自分类Dev

PHP DOMDocument xml过滤元素

来自分类Dev

DomDocument。在xml文件中搜索

来自分类Dev

如何使用DOMDocument insertBefore

来自分类Dev

使用DOMDocument获得价值

来自分类Dev

在 php foreach 循环中访问 xml 节点

来自分类Dev

PHP DOMDocument:如何使用COLONS解析自定义XML / RSS标记名称?

来自分类Dev

MSXML2.DOMDocument60-使用命名空间在VBA中读取XML

来自分类Dev

使用 DOMDocument 将新节点及其子节点添加到 XML 文档

来自分类Dev

如何使用 symfony 3.4 将 xml soap 请求转换为 DOMDocument

来自分类Dev

使用foreach访问数组元素

来自分类Dev

使用XMLReader和foreach进行XML解析

来自分类Dev

使用 foreach 获取 XML 节点的值

来自分类Dev

如何在保留内部HTML格式的同时使用DOMDocument访问HTML节点?

来自分类Dev

使用DOMDocument删除HTML标签

来自分类Dev

使用DOMDocument删除HTML标签

来自分类Dev

使用DOMDocument从HTML获取数据

来自分类Dev

使用DOMDocument解析布尔属性

来自分类Dev

使用LINQ to XML和foreach循环创建XML文档

Related 相关文章

热门标签

归档