moin,
ich habe einige probleme beim parsen von xml.
zunächst erstmal ein beispiel für den xml quelltext:
den versuche ich nun folgendermassen zu parsen:
folgender fehler tritt dann immer auf: "Fatal error: Allowed memory size of 8388608 bytes exhausted", da die anzahl der 'records' in der xml datei um die 40.000 betägt.
wäre sehr schön, wenn mir jemand helfen könte
gruß
narak
ich habe einige probleme beim parsen von xml.
zunächst erstmal ein beispiel für den xml quelltext:
Code:
<?xml version="1.0" encoding="WINDOWS-1251" standalone="yes" ?> <kum_data> <dataset> <record id="0"> <value1>88</value1> <value2>301</value2> <value3>New City</value3> <value4>1</value4> <value5>2</value5> <value6>361</value6> </record> <record id="1"> <value1>250</value1> <value2>220</value2> <value3>Elbenfestung</value3> <value4>2</value4> <value5>1041</value5> <value6>47</value6> </record> <record id="2"> <value1>403</value1> <value2>580</value2> <value3>Aribeth01</value3> <value4>3</value4> <value5>1970</value5> <value6>171</value6> </record> </dataset> </kum_data>
Code:
function update_cities($url, $server) { mysql_query("TRUNCATE TABLE `" . $server . "_city`"); $output = domxml_open_file($url); $cities = $output -> get_elements_by_tagname("record"); // <- schon da speicherüberlauf $id = 0; foreach ($cities as $knoten) { // echo "Speicher: ". memory_get_usage() . "<br>\n"; $kinder = $knoten -> child_nodes(); $i = 0; foreach ($kinder as $stadt) { $data[$i] = $stadt -> get_content(); echo "(i=" . $i . ") " . $data[$i]; $i++; } echo "<br>\n"; // mysql_query(); ->nur datenbankeingabe $id++; } // echo "city update erfolgreich!"; }
wäre sehr schön, wenn mir jemand helfen könte
gruß
narak
Kommentar