Thomas J.S.: XML parsen mit PHP

Beitrag lesen

Hallo Andreas,

Konkret geht es darum - wie überführe ich das XML-Schema in einen PHP-Array, den ich dann verwenden kann um das Formular die Daten aus der XML-Datei anzuzeigen, ein Formular zu erzeugen oder... Ich habe das noch nie gemacht. Was ich allerdings bisher gelesen habe, ist dass man es auf alle Fälle mit so eigenen regEx Parsern vergessen kann. Dann gibt es halt die Expat und die DOMXML Funktionen, ich denke mit den Expat-Funktionen kann ich es hinbekommen, muss halt probieren...

Du könntest PHP mit "--with-dom" kompilieren bzw. in der php.ini die extension php_domxml.dll aktivieren.
Aber ich empfehle dazu einfach das Buch von Antje zu kaufen http://www.amazon.de/exec/obidos/ASIN/3772360602/ darin findest du eine Menge über PHP und XML.

Die Struktur gibst ja du vor. Wie kann sie denn da für dich "wild" sein?
Ich hätte gerne einen Array der ebenso verzweigt ist wie die XML-Struktur.

Wie du das tatsächlich in eine Datei schreibst kann ich dir nicht sagen, aber DOM wäre für dich hier das richtige (wenn du eine baumartige Struktur wünschst), damit hätest du eben so eine Baumstruktur im Speicher und könntest mit den DOM XML funktionen auf diesem Baum zugreifen und die gewünschte Elemente oder Attribute etc. selektieren:

$domdoc = domxml_open_file($xmlFile);
$arr_domdocelement = $domdoc -> get_elements_by_tagname("verfasser");
print_r($arr_domdocelement);

oder

$domdoc = domxml_open_file($xmlFile);
$domdocelement = $domdoc -> document_element();
print_r($domdocelement -> chld_nodes());  //Ergibt ein Array

Aber 1) ich verstehen icht viel davon und
     2) Atjes Buch beschreib diese dinge wirklich sehr gut.

Grüße
Thomas