Welcome to the Cookbook

loading...

8.4.1 Parsen von Xml

Der Originaltext dieses Abschnitts hat sich seit der letzen Übersetzung geändert. Bitte hilf dabei die Unterschiede zu lösen. Du kannst:

Mehr Informationen zu Übersetzungen

Um Xml mit der Xml Klasse zu parsen benötigst du eine Zeichenkette, die das zu parsende XML enthält.

$input = '<' . '?xml version="1.0" encoding="UTF-8" ?' . '>
    <container>
        <element id="first-el">
            <name>My element</name>
            <size>20</size>
        </element>
        <element>
            <name>Your element</name>
            <size>30</size>
        </element>
    </container>';
$xml = new Xml($input);
  1. $input = '<' . '?xml version="1.0" encoding="UTF-8" ?' . '>
  2. <container>
  3. <element id="first-el">
  4. <name>My element</name>
  5. <size>20</size>
  6. </element>
  7. <element>
  8. <name>Your element</name>
  9. <size>30</size>
  10. </element>
  11. </container>';
  12. $xml = new Xml($input);

Dies würde ein Xml Dokument Objekt erstellen, welches dann manipuliert, durchlaufen und wieder zurück in eine Zeichenkette konvertiert werden kann.

Mit dem oberen Beispiel kannst du folgendes machen.

echo $xml->children[0]->children[0]->name;
// Gibt 'element' aus

echo $xml->children[0]->children[0]->children[0]->children[0]->value;
// Gibt 'My Element' aus

echo $xml->children[0]->child('element')->attributes['id'];
// Gibt 'first-el' aus
  1. echo $xml->children[0]->children[0]->name;
  2. // Gibt 'element' aus
  3. echo $xml->children[0]->children[0]->children[0]->children[0]->value;
  4. // Gibt 'My Element' aus
  5. echo $xml->children[0]->child('element')->attributes['id'];
  6. // Gibt 'first-el' aus