如何使用 php 获取 xml 节点的名为 xlink:href 的属性的值
题
我就是做不到,不知道乳清。如何使用 php.ini 获取 xml 节点的名为 xlink:href 的属性的值?请有人轻轻推我一下。我是 PHP 新手
这是 XML 文档
<?xml version="1.0" encoding="UTF-8"?>
<topicMap id="1HLCM3FXT-28MTV0W-50"
xmlns="http://www.topicmaps.org/xtm/1.0/" xmlns:xlink="http://www.w3.org/1999/xlink">
<topic id="1HLCM7CDQ-21WQN9G-66">
<instanceOf>
<subjectIndicatorRef xlink:type="simple" xlink:href="http://cmap.coginst.uwf.edu/#concept"/>
</instanceOf>
<baseName>
<baseNameString><![CDATA[feathers]]></baseNameString>
</baseName>
<occurrence>
<resourceRef xlink:type="simple" xlink:href="file:/./Birds_concept - about birds/feathers.txt"/>
</occurrence>
</topic>
</topicMap>
解决方案
使用 DOM 和 *NS 函数之一,例如 getAttributeNS:
$doc = new DOMDocument();
$doc->loadXML($your_xml_string);
$resource_refs = $doc->getElementsByTagName('resourceRef');
foreach($resource_refs as $rr)
print_r( $rr->getAttributeNS('http://www.w3.org/1999/xlink', 'href') );
(这是未经测试的代码;print_r 可能无法按预期工作。getAttributeNS 返回一个 节点列表, ,节点列表中的每个项目将是 一个属性. 。getAttributeNS 页面上的文档有另一个示例。)
不隶属于 StackOverflow