vorige Präsentation: DTD | zurück zum Buch-Kapitel [esc] | Nächste Präsentation XML und Javascript
In PHP gibt es mehrere Libraries zur Verarbeitung von XML. In der offiziellen Doku sind unter XML Manipulation 13 verschiedene angeführt. Wir werden 2 davon näher betrachten.
$doc = DOMDocument::loadXML('<set><node>gleich</node><node>vorher</node></set>'); $node = $doc->getElementsByTagName('node')->item(1); $node->removeChild($node->firstChild); $newText = new DOMText('nachher'); $node->appendChild($newText); header( "Content-Type: application/xml; charset=utf-8" ); echo $doc->saveXML();
SimpleXML lädt das XML direkt als PHP Datenstruktur: Aus einer Node wird ein PHP Objekt, aus mehreren Kindern einer Node wird ein Array, aus Attributen werden Eigenschaften.
Diese Datenstruktur erlaubt das Auslesen und das Manipulieren von XML:
$doc = new SimpleXMLElement('<set><node>gleich</node><node>vorher</node></set>'); $doc->node[1] = "nachher"; header( "Content-Type: application/xml; charset=utf-8" ); echo $doc->asXML();
Viele Webseiten bieten XML als “Webservice” an. Zum Beispiel kann man bei der Wikipedia API Teile von Wikipedia-Einträgen, Bilder, Meta-Informationen abfragen:
$title = "Wiesen-Labkraut"; $parameters = array( "action" => "query", "titles" => urlencode( $title ), "prop" => "extracts", "exintro" => 1 ); $url = "http://de.wikipedia.org/w/api.php?" . http_build_query( $parameters ) . "&format=xml"; $xml_string = file_get_contents($url); if( $xml_string === false ) { echo("could not load $url"); die(); } $xml_doc = new SimpleXMLElement($xml_string);
vorige Präsentation: DTD | zurück zum Buch-Kapitel [esc] | Nächste Präsentation XML und Javascript
/
#