Come posso ottenere il valore di un attributo chiamato xlink: href di un nodo XML utilizzando php

StackOverflow https://stackoverflow.com/questions/3542153

  •  30-09-2019
  •  | 
  •  

Domanda

ho appena cant farlo, Non KNO siero di latte. Come posso ottenere il valore di un attributo chiamato xlink: href di un nodo XML utilizzando php. Si prega per favore qualcuno dammi una gomitata. Sono nuovo di php

Questo è il documento 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>
È stato utile?

Soluzione

il DOM e una delle funzioni * NS, come 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') );

(Questo è il codice non testato;. Print_r potrebbe non funzionare come previsto getAttributeNS restituisce un lista dei nodi , ogni elemento nell'elenco dei nodi sarà un attributo . la documentazione sulla pagina getAttributeNS ha un altro esempio.)

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top