DOM xml ist leer
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
-
Hi,
ich bin mal wieder nach langer Zeit hier, weil ich echt nicht weiterkomme.
Ich bin dabei ein XML-Backend zu schreiben, aber wenn ich das ganze ausführe wird nur
ausgegeben.<?xml version="1.0" encoding="ISO-8859-1"?>
// Natürlich sind die Variblen mit Inhalt gefüllt;
Hier ist der relevante Teil des Codes.
public function printXML(){ $args = $this->getData(); $mon = new Mon(); $tue = new Tue(); $wed = new Wed(); $thu = new Thu(); $fri = new Fri(); for($i = 0; $i < count($args); $i++){ for($j = 1; $j < count($args[$i]); $j++){ switch ($j) { case 1: $mon->parseData($args[$i][$j], $args[$i][0]); break; case 2: $tue->parseData($args[$i][$j], $args[$i][0]); break; case 3: $wed->parseData($args[$i][$j], $args[$i][0]); break; case 4: $thu->parseData($args[$i][$j], $args[$i][0]); break; case 5: $fri->parseData($args[$i][$j], $args[$i][0]); break; default: break; } } } $doc = new DOMDocument("1.0", "ISO-8859-1"); $root = $doc->createElement('root'); $monNode = $doc->createElement('mon'); $tueNode = $doc->createElement('tue'); $wedNode = $doc->createElement('wed'); $thuNode = $doc->createElement('tue'); $friNode = $doc->createElement('fri'); $root->appendChild($monNode); $root->appendChild($tueNode); $root->appendChild($wedNode); $root->appendChild($thuNode); $root->appendChild($friNode); $mon->getXml($monNode, $doc); $tue->getXml($tueNode, $doc); $wed->getXml($wedNode, $doc); $thu->getXml($thuNode, $doc); $fri->getXml($friNode, $doc); echo $doc->saveXML(); } } class schoolDay{ public $id = Array(); public $time01 = Array(); public $time02 = Array(); public $subject = Array(); public $room = Array(); public function parseData($arg0, $arg1){ $args = preg_split("/ /", $arg0); $time = preg_split("/ /", $arg1); for($i = 0; ($i+1) < count($args); $i = ($i+2)){ $this->id[] = count($this->id); $this->time01[] = $time[0]; $this->time02[] = $time[1]; $this->subject[] = $args[$i]; $this->room[] = $args[($i+1)]; } } public function getXml($node, $doc){ for($i = 0; $i < count($this->id); $i++){ $item = $doc->createElement("item"); $node->appendChild($item); $item->appendChild($doc->createElement('id', $this->id[$i])); $item->appendChild($doc->createElement('time01', $this->time01[$i])); $item->appendChild($doc->createElement('time02', $this->time02[$i])); $item->appendChild($doc->createElement('subject', $this->subject[$i])); $item->appendChild($doc->createElement('room', $this->room[$i])); $item->appendChild($doc->createElement('teacher', '---')); } } } class Mon extends schoolDay{ } class Tue extends schoolDay{ } class Wed extends schoolDay{ } class Thu extends schoolDay{ } class Fri extends schoolDay{ }
-
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Du hast vor dem
noch folgende Zeile vergessen:$doc->saveXML()
$doc->appendChild($root);
Beitrag zuletzt geändert: 27.8.2013 22:11:23 von hackyourlife -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage