我正在使用 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] 删除。
我来说两句