phpbar.de logo

Mailinglisten-Archive

[php] Templates - welche klasse ist die beste ?

[php] Templates - welche klasse ist die beste ?

Tobias Daur php_(at)_phpcenter.de
Thu, 2 May 2002 14:14:27 +0200


Hi,

> >- Die Lösung wäre ein Templatesystem, das das Template nur dann
> parst, wenn
> >es geändert wird, und dann in einer einzigen PHP-Datei den
> php-Code und das
> >Template zusammenführt. Dann könnte der Clientteil richtig umfangreich
> >werden, wenn sich das Template nicht ändert, wäre das System
> trotzdem flott.
> >-> Smarty.
>
> Also ich schreibe grad an einem sehr umfangreichem News-script. Mit login
> breich, in dem man weitausmehr als nur die news schreiben kann. Da ändert
> sich die ausgabe des Scripts bei fast jedem script aufruf. also währe
> Smarty dann nichtmehr zu empfehlen?

Ändert sich die Ausgabe des Scripts oder ändert sich das Template?
Würde sich die Ausgabe des Scriptes nicht ändern, bräuchtest Du kein PHP.
Sondern HTML plain. Smarty generiert eine PHP-Datei, in der das PHP-Script
und das Template miteinander verbunden werden. Diese Datei entspricht also
Deinem Script, wenn Du kein Templatesystem verwenden würdest, dynamisch und
schnell. Deine Änderungen machst Du aber getrennt in Deiner PHP-Datei oder
in Deiner Templatedatei.
Die Verlagerung von Logik in das Templatefile ist kein Muß. Allerdings ist
es eine für Programmierer typische Sicht der Dinge, die gesamte Logik im
Script zu behandeln und entsprechend mit vielen, verschachtelten, für sich
genommen dummen Templatebausteinen zu arbeiten. Aus der Sicht der Producer
aber ist es IMHO angenehmer, bestimmte Dinge selber mit Logik füllen zu
dürfen, etwa das Anzeigeformat eines Geldbetrages, oder Schleifen. Dann
besteht auch die Möglichkeit, Templates in einer einzigen Datei zu halten
und sie nicht sofort bei der ersten Bedingung aufsplitten zu müssen - das
dient der Übersicht.
Ein Templatesystem sollte einen nicht zur Erstellung von Logik im Template
zwingen, aber es sollte da auch keine Grenze setzen. Keine Grenze heißt bei
Smarty: es lassen sich im Template auch PHP-Befehle ausführen :)

Lest Euch die (IMHO ausgezeichnete) Doku durch, dann sollte der Ansatz
deutlich werden. Und dann reden wir weiter ;)

Tobias


php::bar PHP Wiki   -   Listenarchive