"Christmas - the time to fix the computers of your loved ones" « Lord Wyrm

PHP: XML importer/exporter

Spikx 12.11.2012 - 12:07 1498 6
Posts

Spikx

My Little Pwny
Avatar
Registered: Jan 2002
Location: Scotland
Posts: 13504
In einem Projekt müssen wir aus einer Webapplikation Daten exportieren, damit diese dann in einem neuen System wieder importiert werden können. Ich selbst schreibe den Exporter und dachte mir, ich erstelle mir aus den betroffenen Daten der (MySQL) Datenbank einfach ein XML file. Am anderen Ende schreibt dann jemand anders einen Importer wo er dann das XML file parsen und in seine Struktur übertragen kann.

Allerdings bin ich mir noch nicht sicher, ob das auch so Sinn macht. In den Daten die exportiert werden sollen befindet sich auch Text mit HTML tags (aus TinyMCE & Co. Eingaben). Vielleicht stellt sich mein Gehirn gerade nur dumm an, aber muss ich diese dann nicht speziell behandeln? Andernfalls würde man dann beim parsen des XML files zusätzliche DOM Elemente haben, die eigentlich nicht gedacht sind.

Außerdem wollte ich mal einfach nach passenden XML creator und parser fragen. Verwendet man dafür üblicherweise einfach DOMDocument oder gibt es andere frei verfügbare 3rd party Klassen, die das ganze "besser" erledigen?

Obermotz

Fünfzylindernazi
Avatar
Registered: Nov 2002
Location: OÖ/RI
Posts: 5262
Wichtig: Immer zuerst das XSD.

Du kannst Libraries ausprobieren hier, aber immer nachher auf das XSD validieren.
Das XSD bekommt auch die Kundschaft damit die ihr Interface anpassen können.

COLOSSUS

Administrator
GNUltra
Avatar
Registered: Dec 2000
Location: ~
Posts: 12070
fyi: http://dev.mysql.com/doc/refman/5.0...n_mysqldump_xml

Vielleicht sparst du dir so das Schreiben des Exporters.

Rektal

Here to stay
Registered: Dec 2002
Location: Inside
Posts: 4452
Zitat von Spikx
Allerdings bin ich mir noch nicht sicher, ob das auch so Sinn macht. In den Daten die exportiert werden sollen befindet sich auch Text mit HTML tags (aus TinyMCE & Co. Eingaben). Vielleicht stellt sich mein Gehirn gerade nur dumm an, aber muss ich diese dann nicht speziell behandeln? Andernfalls würde man dann beim parsen des XML files zusätzliche DOM Elemente haben, die eigentlich nicht gedacht sind.
Für das Problem heißt die Lösung CDATA.

Spikx

My Little Pwny
Avatar
Registered: Jan 2002
Location: Scotland
Posts: 13504
Zitat von COLOSSUS
fyi: http://dev.mysql.com/doc/refman/5.0...n_mysqldump_xml

Vielleicht sparst du dir so das Schreiben des Exporters.
Jo, habe ich mir auch schon gedacht. Evt. geht es auch gar nicht anders, also nicht über ein PHP script (zumindest nicht wenn man alles auf einmal exportieren will), da es ~33000 records sind mit insgesamt ~90 MiB. kA ob das schon zu viel ist.

// uhm, aber wenn PHP schon beim export einen crap-out machen würde, würd's ja beim import nicht anders sein, naja :D


Zitat von Rektal
Für das Problem heißt die Lösung CDATA.
Ah stimmt, thx :).
Bearbeitet von Spikx am 12.11.2012, 13:09

kleinerChemiker

Here to stay
Avatar
Registered: Feb 2002
Location: Wien
Posts: 4281
Zitat von Spikx
Jo, habe ich mir auch schon gedacht. Evt. geht es auch gar nicht anders, also nicht über ein PHP script (zumindest nicht wenn man alles auf einmal exportieren will), da es ~33000 records sind mit insgesamt ~90 MiB. kA ob das schon zu viel ist.

// uhm, aber wenn PHP schon beim export einen crap-out machen würde, würd's ja beim import nicht anders sein, naja :D


Ah stimmt, thx :).


Muß man ja nur memorylimit und execution time hochsetzen.

Obermotz

Fünfzylindernazi
Avatar
Registered: Nov 2002
Location: OÖ/RI
Posts: 5262
Zitat von kleinerChemiker
Muß man ja nur memorylimit und execution time hochsetzen.
Kann aber ausarten, würde auf jeden Fall Streams bevorzugen.
Kontakt | Unser Forum | Über overclockers.at | Impressum | Datenschutz