DOM getElementsByTagName, men kun childs

Tags:    xml

Hvordan finder jeg de child elementer, der har et bestemt navn, lidt ala getElementsByTagName, men hvor der kun findes child nodes?

Altså

<xml>
<hey/>
<node>
<hey/>
</node>
<hey/>
</xml>

Her vil jeg finde nodesne <hey> som er child af <xml>, altså første og sidste <hey>, men ikke midterste.

Og hvordan sorterer jeg de nodes jeg finder, fx efter <hey> nodens første <sort> childs indhold?

<hey><sort>3</sort></hey>
<hey><sort>1</sort></hey>
<hey><sort>2</sort></hey>

bruger PHP5's DOM



5 svar postet i denne tråd vises herunder
1 indlæg har modtaget i alt 3 karma
Sorter efter stemmer Sorter efter dato
Hvordan finder jeg de child elementer, der har et bestemt navn, lidt ala getElementsByTagName, men hvor der kun findes child nodes?

Altså

<xml>
<hey/>
<node>
<hey/>
</node>
<hey/>
</xml>

Her vil jeg finde nodesne <hey> som er child af <xml>, altså første og sidste <hey>, men ikke midterste.

Og hvordan sorterer jeg de nodes jeg finder, fx efter <hey> nodens første <sort> childs indhold?

<hey><sort>3</sort></hey>
<hey><sort>1</sort></hey>
<hey><sort>2</sort></hey>

bruger PHP5's DOM



Jeg ville prøve at lede i PHPs dokumentation efter en funktion/metode der hedder noget i retningen af selectNodes(path) hvor "path" er en xPath sætning der referere til dine 'hey' noder.
Noget i retningen af dette:

Fold kodeboks ind/udKode 


Det skal lige nævnes at jeg ikke har udpræget forstand på PHP.


- karmazilla -



PHP's dokumentation mht DOM2 er **** dårlig og mangelfuld, og jeg er nybegynder i at bruge DOM og XML. Til dit forslag svarede PHP: Call to undefined method DOMDocument::selectNodes()

Hvad er "namespace" og "XPath"?



PHP's dokumentation mht DOM2 er **** dårlig og mangelfuld, og jeg er nybegynder i at bruge DOM og XML. Til dit forslag svarede PHP: Call to undefined method DOMDocument::selectNodes()

Hvad er "namespace" og "XPath"?


Ja, det ser lidt skidt ud med PHP, og det kan jeg ikke hjælpe dig med.

XPath er et sprog man bruger til at lokalisere noder med i et XML dokument.
Og namespaces bruges som kontekstreferencer til navne i XML.
Men alt det kan du bla. finde mere om her:
http://www.w3schools.com



- karmazilla -



Nu har jeg fået svaret på 1. spg.

Kender du eller andre svaret på hvordan man sorterer resultatet? Enten efter en atribut eller en childnodes indhold.



Nu har jeg fået svaret på 1. spg.

Kender du eller andre svaret på hvordan man sorterer resultatet? Enten efter en atribut eller en childnodes indhold.


Her finder du mere info til din sortering:
http://www.w3.org/TR/xslt#sorting




t