NetLook: XML auslesen mal ja, mal nein ?

Hallo!

Hier:
http://www.drweb.de/php/php-xml.shtml

Gibt es folgednes Beispiel, diese XML Datei

  
<?xml version="1.0" encoding="ISO-8859-1" ?>  
<artikel>  
<titel>Der Titel</titel>  
<teaser>Der Teaser, eine kurze Beschreibung</teaser>  
<inhalt>Der Artikelinhalt an sich</inhalt>  
</artikel>  

Wird so ausgelsen

  
if (file_exists('artikel.xml')) {  
$xml = simplexml_load_file('artikel.xml');  
  
echo $xml->teaser[0];  
  
} else {  
exit('Konnte Datei nicht laden.');  
}  

Das funktioniert auch, jetz habe ich probiert diese XML Datei auszulesen:

  
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>  
<enzyklopädie>  
     <titel>Wikipedia Städteverzeichnis</titel>  
     <eintrag>  
          <stichwort>Genf</stichwort>  
          <eintragstext>Genf ist der Sitz von …</eintragstext>  
     </eintrag>  
     <eintrag>  
          <stichwort>Köln</stichwort>  
          <eintragstext>Köln ist eine Stadt, die …</eintragstext>  
     </eintrag>  
</enzyklopädie>  

Mit diesem Code:

  
if (file_exists('artikel.xml')) {  
$xml = simplexml_load_file('artikel.xml');  
  
echo $xml->stichwort[0];  
  
} else {  
exit('Konnte Datei nicht laden.');  
}  

Was aber zu keinem Ergebnis führt, es erscheint nichts.

Warum nicht, wo ist der Unterschied?

Gruß
NetLook

  1. Ich vermute stark:

    echo $xml->eintrag[0]->eintragstext;

    Grüße

    1. Es sei hinzugefügt wegen gerade doch noch ausprobiert:
      zB:

      echo utf8_decode($xml->eintrag[1]->stichwort);

      1. Ja hat funktioniert, super. vielen dank an alle :)

        Gruß
        NetLook

  2. Hallo NetLook,

    echo $xml->stichwort[0];

    Das root-Element ist hier <enzyklopädie>, du musst also

    echo $xml->eintrag[0]->stichwort;

    notieren.

    Beste Grüße
    Richard

    --
    ~§%+