phpbar.de logo

Mailinglisten-Archive

[php] XML/XSLT in PHP-Projekten (was: Dumme Frage zu Templates)

[php] XML/XSLT in PHP-Projekten (was: Dumme Frage zu Templates)

Peter Bieling network at media-palette.de
Don Sep 22 15:38:17 CEST 2005


Hallo Seong,

Seong-Min Kang wrote:

> Ich habe ein Framework erstellt, das als "Datenschicht" nur noch XML
> DOMs verwendet. Alle Ausgaben werden über XSLT verarbeitet. Ich bin
> eigentlich mehr als zufrieden damit. Auch live sieht das Ganze ziemlich
> perfomant aus. Die XML Library ist sehr gut und arbeitet schnell (dafür
> war es ja eigentlich gedacht). XPath Queries werden auch rasend schnell
> abgesetzt, so dass ich mittlerweile auch kaum Arbeit mehr mit meiner
> Datenstruktur habe.

es wäre interessant zu erfahren, was bei Dir die "Datenschicht" 
bedeutet. Hast Du vielleicht ein Beispiel zum besseren Verständnis?
Ich teste z.B. im Moment die Möglichkeit, Formulardaten in einem 
XML-Dokument zu definieren. Das Dokument enthält außerdem 
Validierungsregeln und Meldungen, wenn die Bedingung nicht erfüllt wird. 
Bei Auswahlfeldern wird zusätzlich geprüft, ob der vom User geschickte 
Wert überhaupt definiert ist. Das läuft alles auch schon sehr gut. 
Fernziel ist, aus der XML-Struktur auch noch ein Rohtemplate zu 
generieren, das man dann weiter vefeinern kann. (Das sollte aber kein 
großes Problem sein.)
Bei mir kommt allerdings kein DOM-XML zum Einsatz, sondern meine eigene, 
auf den SAX-Parserfunktionen basierende Klasse im Zusammenspiel mit 
meiner bereits genannten Templateklasse.

[...]

> Die Nachteile sehe ich auch ein. XSL ist manchmal etwas nervig zu
> schreiben. Allerdings hat man da auch sehr schöne Features (Sortierung,
> dynamische Texte...). Ich habe auch einmal Testweise eine Anzeige von
> Seiten (<<, 1, 2, 3, ... >>) über XSLT realisiert. Ging auch einfacher
> als ich dachte.

Damit verlagerst Du natürlich Programm-Logik, zumindest für die 
Darstellung, aus PHP heraus. Mein Konzept sieht dagegen so aus, dass im 
"HTML-Bereich" überhaupt nichts zu "programmieren" ist, nicht einmal 
Schleifen. All das wird bei mir im PHP-Teil gelassen (möglichst 
separat). Änderungen des Ausgabeformats werden dann nicht in -zig 
Templates einzeln definiert sondern zentral konfigurierbar gemacht. Ein 
Beispiel wäre, ob Dezimalzahlen mit . oder , geschrieben werden.

> Vielleicht kann ich ja einige dazu bewegen sich etwas mit XSLT zu
> beschäftigen ;)

Das wäre schön, denn es gibt sicherlich eine Menge sinnvolle 
Anwendungsbereiche für XSLT.

Viele Grüße

Peter

php::bar PHP Wiki   -   Listenarchive