[PHP][DOM] node value uit extern XML document lichten

Pagina: 1
Acties:
  • 44 views sinds 30-01-2008

  • AxiMaxi
  • Registratie: December 2000
  • Laatst online: 28-04 16:00
Ik heb een XML document:
XML:
1
2
3
4
5
6
<gallery id="1">
    De credits voor deze gallery gaan naar de maker.
</gallery>
<gallery id="2">
    De credits voor deze gallery gaan naar iemand anders.
</gallery>


En dat lees ik in met:
PHP:
1
2
3
4
5
6
7
$doc = DOMDocument::load("credits.xml");

$galleryTag = $doc->getElementsByTagName("gallery");
foreach ($galleryTag as $regel) {
   $value = $regel->GROOT_VRAAGTEKEN();
   echo $value;
}


Maar hoe de fuck lees ik nou in PHP datgene uit wat tussen de <gallery>-tags staat?

Ik heb node_value(); geprobeerd, ik heb get_content(); geprobeerd en die werken niet.
In JavaScript heb je de textNode, maar dat kent PHP weer niet.
Op PHP.net kan ik het niet vinden. Append, delete, construct... alles behalve 'get'! En erg scheutig zijn ze daar ook niet met voorbeelden, als het DOM betreft.

Wellicht ligt het vlak voor m'n neus, maar ik zienutnie... :?

Overigens helemaal dramatisch natuurlijk dat de ene PHP versie met underscores werkt en de andere met 'verdwaalKapitalen'. |:(

edit:
Overigens gebruik ik PHP 5, maar 't moet eigenlijk werken in PHP4.3.x

edit:
(Na enig zoekwerk) Aaah! PHP 5 = DOM, PHP 4.x = DOM XML

[ Voor 21% gewijzigd door AxiMaxi op 10-06-2005 23:55 . Reden: het licht gezien ]

[Hier had mijn handtekening kunnen staan]


  • Sybr_E-N
  • Registratie: December 2001
  • Laatst online: 20:22
Kan aan mij liggen hoor maar moet je niet gewoon DomNode->node_value hebben?

offtopic:
Ik heb nog noooit met de xml functies van php gespeeld dus ik kan er falikant naast zitten.

  • Glimi
  • Registratie: Augustus 2000
  • Niet online

Glimi

Designer Drugs

(overleden)
Zelfde disclaimer als Sybr_E-N, maar het lijkt mij een kwestie van de textnode opvragen via first-child() of child-nodes() en daar vervolgens met node_value() de tekststring uit plukken

  • AxiMaxi
  • Registratie: December 2000
  • Laatst online: 28-04 16:00
GHAAAA.... het is niet nodeValue(), maar inderdaad nodeValue. 8)7
Dus zonder haakjes....
PHP:
1
2
3
4
5
6
7
$doc = DOMDocument::load("credits.xml");

$galleryTag = $doc->getElementsByTagName("gallery");
foreach ($galleryTag as $regel) {
   $value = $regel->nodeValue;
   echo $value;
}

Daar ging ik de mist in.

edit:
Logisch eigenlijk... het is een property, geen method.

Overigens, het eruit vissen met firstChild enzo, da's 's probleem niet. Maar bedankt voor de aandacht :)

[ Voor 43% gewijzigd door AxiMaxi op 10-06-2005 22:24 . Reden: Logiesj ]

[Hier had mijn handtekening kunnen staan]


  • Creepy
  • Registratie: Juni 2001
  • Laatst online: 06-05 18:51

Creepy

Tactical Espionage Splatterer

Tjah. Het staat toch echt in de PHP documentatie. Volgende keer zelf iets beter zoeken ;)

"I had a problem, I solved it with regular expressions. Now I have two problems". That's shows a lack of appreciation for regular expressions: "I know have _star_ problems" --Kevlin Henney


Dit topic is gesloten.