|
|
|
|
|
|
|||||||
| PHP-Fortgeschrittene Arbeiten mit PHP ohne Einschränkungen |
|
|
|
LinkBack | Themen-Optionen |
Bewertung:
|
|
|
#1 (permalink) |
|
Benutzer
Registriert seit: 08.08.2008
Beiträge: 63
![]() |
Hallo,
ich bastell grad an einer Template Engine rum (nur für mich zum Spass an der Freude) dort will ich nun ein paar Kontrollstrukturen einbringen, z.B. [IF $Variable==1] <table></table> [ELSE] <tr></tr> [/IF] [FOREACH $Variable_Array AS $Var] <tr> <td>[$Var]</td> </tr> [/FOREACH] Das ganze sollte auch verschachtelt gehen. Jeman ne Idee wie man das machen könnte, hab mal n bissl mit regulären ausdrücken rumgespielt, hat aber nicht so geklappt Danke und Gruß Kerstel |
|
|
|
|
|
|
|
PHP Code Flüsterer
Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten
|
|
|
|
#2 (permalink) | |
|
moderatives Dielektrikum
Registriert seit: 21.05.2008
Beiträge: 25.134
PHP-Kenntnisse: Fortgeschritten ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Zitat:
__________________
-- „Eins ist Fakt: Gescannt wird nackt!“ Privatsphäre 2.0 - Nacktscanner mit Eyetracking. Unser Flugzeug darf kein geschlechtsfreier Raum sein. -- |
|
|
|
|
|
|
#3 (permalink) |
|
Moderator und Wett-König
|
Hallo kerstel,
Kontrollstrukturen in Templates sind überflüssig, bzw. unsinnig. Templates dienen in der Regel dazu Code von Design zu trennen. Auf diesem Weg gelangst du sehr schnell in die Welt von MVC, das beschreibt, dass Kontrollstrukturen durch Aktionen im Controller mit den Informationen des Models abgewickelt werden sollten. Diese Vorgehensweise ist IHMO sauberer als Funktionalität in Templates zu legen. Weiterer Nachteil der Kontrollstrukturen ist, dass der Entwickler dazu verleitet wird viele Funktionen "mal eben schnell" in das Template - das ja für einen konkreten Anwendungsfall oder gar eine konkrete Sprache erstellt wird - zu integrieren. Damit wird die Funktion, die vielleicht in einer anderen Sprache auch benötigt wird nicht abstrahierbar und man beginnt mit C&P-Engeneering. Meiner Meinung nach solltest du besser eine Möglichkeit schaffen, einen Controller für dein Template definieren zu dürfen, der die Inhalte entsprechend seinen Model-Informationen manipulieren kann.
__________________
Viele Grüße, Dr.E. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1. Think about software design before you start to write code! 2. Discuss and review it together with experts! 3. Choose good tools (-> Adventure PHP Framework (APF))! 4. Write clean and reusable software only! ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|
|
|
|
|
#4 (permalink) | |
|
Erfahrener Benutzer
Registriert seit: 05.09.2007
Beiträge: 5.044
![]() |
Zitat:
Gibt es überhaupt ein produktiv nutzbares Template-System, das keine Kontrollstrukturen in seiner Template-eigenen Syntax hat? Ernst gemeinte Frage, da ich mich mit Template-Systemen nicht weiter beschäftige. |
|
|
|
|
|
|
#5 (permalink) | |
|
Moderator und Wett-König
|
Hallo David,
Zitat:
Mit nur einem Templatesystem ist einem aber nicht wirklich geholfen. Nicht sauber eingesetzt bietet es genau die Nachteile, die du genannt hast. Gibt man dem Template-Bauer jedoch die Möglichkeiten, auf einen Satz von Komponenten zugreifen zu können, die im Template "verbaut" werden können, so sieht die Sache wieder anders aus. Sollte eine Komponente dann auch noch per Template konfigurierbar sein (z.B. Sprachumschaltung eines CMS), ist es für den Template-Bauer ohne weiteres möglich eine Design-Aufgabe komplett alleine umzusetzen. Dazu muss das Templatesystem jedoch die Möglichkeit beinhalten diverse konfigurierbare Komponenten einbinden zu können. Letzters unterstützen jedoch mir bekannte Templatesysteme (ich klammere Templating, das in diversen MVC-Frameworks integriert ist hierbei aus) jedoch nicht und damit ist der Einsatz eines Templatesystems eines Templatesystems wegen Unsinn. Aber lassen wir mal kerstel zu Wort kommen.
__________________
Viele Grüße, Dr.E. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1. Think about software design before you start to write code! 2. Discuss and review it together with experts! 3. Choose good tools (-> Adventure PHP Framework (APF))! 4. Write clean and reusable software only! ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|
|
|
|
|
|
#6 (permalink) |
|
Benutzer
Registriert seit: 08.08.2008
Beiträge: 63
![]() |
@nikosch
Mag ich schon hören, trotzdem macht es Spass @dr.e. Seh ich ein wenig anders. Es macht Durchaus Sinn das der Designer kontrollstrukturen hat um flexibel auf Variablenwerte reagieren zu können, z.B. ist das Zitieren im Board auch nix anderes, sowas kann der Entwickler nicht abfangen. Auch eine Foreach schleife macht durchaus sinn. Der Entwickler weiß ja nicht was mit den Variablen im Template passiert. Ich hab bei Smarty in den Cached-Files gesehen, dass die Kontrollstrukturen einfach durch PHP Code ersetzt werden. Ich denke aber das bei einem Umfangreichen Template es stark an die Performance geht wenn der Compiler ständig angesprungen wird. Oder irre ich mich da, da ich bei Smarty eigentlich noch nie Performance Probleme hatte. Viele Grüße Kerstel |
|
|
|
|
|
#7 (permalink) | |
|
Erfahrener Benutzer
Registriert seit: 05.09.2007
Beiträge: 5.044
![]() |
Zitat:
|
|
|
|
|
|
|
#8 (permalink) | |
|
Benutzer
Registriert seit: 08.08.2008
Beiträge: 63
![]() |
Zitat:
|
|
|
|
|
|
|
#10 (permalink) | |
|
Moderator und Wett-König
|
Zitat:
__________________
Viele Grüße, Dr.E. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1. Think about software design before you start to write code! 2. Discuss and review it together with experts! 3. Choose good tools (-> Adventure PHP Framework (APF))! 4. Write clean and reusable software only! ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|
|
|
|
|
|
|
|
PHP Code Flüsterer
Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten
|
|
|
| Themen-Optionen | |
| Thema bewerten | |
|
|
Ähnliche Themen
|
||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| XmlHTTPRequests statt Template Engine! Performance? | xueluf | PHP-Fortgeschrittene | 3 | 09.04.2008 11:35 |
| Template Engine vs PHP-Includes | aktionkuba | PHP Tipps 2007 | 16 | 19.06.2007 23:53 |
| Datenbankfelder direkt im Template verfügbar | phpbeginner | Datenbanken | 3 | 29.07.2006 20:30 |
| Eckige Klammern in Template | nutshell | PHP Tipps 2006 | 9 | 05.06.2006 19:12 |
| template in template einfuegen | tonne | PHP Tipps 2005-2 | 8 | 10.11.2005 22:24 |
| [Erledigt] Template Engine die PHP5+E_STRICT überleben | PHP-Fortgeschrittene | 0 | 17.08.2005 10:33 | |
| Template verständniss problem; referenz | PHP Tipps 2005 | 17 | 19.05.2005 06:06 | |
| Template: Verschachteln von foreach | PHP Tipps 2005 | 2 | 12.05.2005 15:37 | |
| Php Code als Variable definieren und in Template darstellen | PHP Tipps 2004-2 | 4 | 31.12.2004 16:22 | |
| Template erstellen? | PHP Tipps 2004-2 | 10 | 08.12.2004 09:41 | |
| suche ein bestimmtes template system | PHP Tipps 2004-2 | 2 | 07.11.2004 19:49 | |
| [Erledigt] Template Parser | PHP-Fortgeschrittene | 9 | 06.10.2004 23:04 | |
| PHP BB Template Engine :: Blöcke??? | PHP Tipps 2004 | 7 | 02.09.2004 21:01 | |
| Template Scripting | PHP-Fortgeschrittene | 2 | 04.06.2004 18:34 | |
| Besucher kamen über folgende Suchanfragen bei Google auf diese Seite |
| eigene template engine, kontrollstrukturen php, performantes template system, template engine php, cache template engine php |