Mailinglisten-Archive |
Hallo Daniel, Am 28.09.2004 22:49 Uhr schrieb "Daniel Haller" unter <daniel_haller at gmx.de>: > sagen wir mal so: > die kapselung in einer eigenen Klasse wird in dem Smarty-Manual > beschrieben und auch in Carsten Möhrke's "Besser PHP programmieren". > Da ich im Umgang mit Smarty 0 Erfahrung hab, dachte ich, ich halte mich > mal an die Tipps ;-) Bin da aber offen... Das Manual bezeichnet die Kapselung in einer extend Klasse als 'flexibel' im Hinblick darauf, was in der Basis Installation beschrieben wird (Dort, wo du in jeder Seite alle $smarty Konstanten (tpl, cache etc.) und die Hauptklasse instanzieren musst). Sinn macht die Kapselung dann, wenn es, wie im Manual Beispiel impliziert, mehrere Applikationen mit jeweiligen Unterordnern geben soll (gästebuch und weitere etc.) wie du in deiner Antwort an Michael beschrieben hast. Wenn du eine flache Hierarchie hast, macht sie mE wenig Sinn, bzw. bringt keine Vorteile. Auch keine in Hinblick auf guten Programmierstil. > auf so eine Lösung bin ich jetzt auch verfallen: > ich habe eine zentrale Datei, setup.inc.php, > die ich bei jeder Seite zu Anfang einbinde. > praktisch allein schon, weil ich da alles einbinden kann, was man so > braucht - setlocale, andere Klassen, DB-Verbindung und und und ... Ich würde (das allerdings nur am Rande) in die 'setup.inc.php' wirklich nur das Setup reinsetzen (Das hat einfach was mit Übersichtlichkeit und möglichst logischen Aufbau zu tun, s. Carsten Möhrke ;)). Das gepostete Beispiel ist ja nur ein kl. Auschnitt, was du noch smarty spezifische in dieser setup.php definieren kannst. Andere tragende Klassen würde ich eher getrennt von dem Smarty Setup behandeln. Z.B In dem du eine Basis Klasse hast (base.class.php) die im Konstruktor Variablen bereitstellt und auch andere Klassen instanziert. Von dieser Basis Klasse leiten sich dann die einzelnen Funktionsklassen ab (z.B db.class.php; 'db extends base' ). > Nur damit ich da richtig sehe: > Von einer solchen Lösung hast du auch gesprochen, oder? Ja, prinzipiell gleich... gruss Olaf -- creatics media.systems : Grünstr. 25 : D-42697 Solingen tel. +49 212 38 32 94 30 : fax. +49 212 38 32 94 31 mailto:og at creatics.de : http://www.creatics.de
php::bar PHP Wiki - Listenarchive