DOM / Klasse - Anfängerproblem

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • DOM / Klasse - Anfängerproblem

    ich versuche mich gerade das erste mal daran, das DOM zu benutzen, hauptsächlich um aus einem Objekt möglichst einfach XML generieren zu können. Leider ist es auch das erste Mal, dass ich objektorientiert zu programmieren versuche (in PHP5).

    der folgende Code funktioniert und zeigt in etwa die Struktur, die dabei rauskommen soll:

    PHP-Code:
    $document = new DomDocument('1.0''iso-8859-1');  
    $hauptelement $document->appendChild($document->createElement('band',''));  
    $kindebene1 $hauptelement->appendChild($document->createElement('bandmembers',''));  
    $kindebene2 $kindebene1->appendChild($document->createElement('bandmember',''));  
    $kindebene3 $kindebene2->appendChild($document->createElement('firstname','Micha'));  
    $kindebene3 $kindebene2->appendChild($document->createElement('lastname','Acher'));  
    print 
    $document->saveXML(); 
    nun versuche ich, diese aufrufe in eine klasse zu packen. nur hab ich leider keine ahnung, wie die klasse bzw. die aufrufe aussehen müssen, damit ich mehr als das hauptelement erzeugen kann.

    PHP-Code:
    class Band extends DOMDocument {
          public function 
    __construct() {
              
    parent::__construct('1.0''iso-8859-1');
          }
               public function 
    create($name,$value) {
              
    $this->appendChild($this->createElement($name,$value));
               }
    }
    $document = new Band;
    $hauptelement $document->create('band','');
    //$kindebene1 = $hauptelement->create('bandmembers','');
    //$kindebene1 = $document->hauptelement->create('bandmembers',''); 
    wie müssen die aufrufe aussehen, oder wie muß ich die klasse erweitern, um die diversen kinder in das objekt zu bekommen?

    ich hab mir aus einem online-buch (url) auch mal eine etwas ausführlichere klasse geklaut, mit der klappt es eine ebene weiter, aber danach hab ich das selbe problem.
Lädt...
X