Moin!
Du argumentierst mit Performancegründen.
Naja, vielleicht schiebe ich die auch vor, weil ich PHP nicht sonderlich mag.
Aha. ;)
Da hab ich auch gar nicht die Perfomance im Auge, sondern die bequeme Wartbarkeit der Website; dass bei späteren Veränderungen so wenig wie möglich in so wenig wie möglich schon bestehenden Datein geändert werden muss.
Dieses Argument kann ich nur teilweise nachvollziehen.
Gewiß, es ist eine Erleichterung, wenn man beispielsweise seine Grafiken von ehemals GIF jetzt auf das kleinere PNG umstellt und in den einbindenden Seiten nichts umstellen muß.
Andererseits: Wenn du deine Fußzeile einmal gültig eingebunden hast, wäre ja lediglich eine Veränderung am Dateinamen bzw. dessen Endung relevant für eine daraus folgende Änderung in allen einbindenden Dateien - inhaltliche Veränderungen beträfen die Einbindung nicht.
Bei einer Umstellung der Technik z.B. von PHP auf Perl ist es ja aber nicht so, dass die Dateibezeichnung, insbesondere der Dateiname, zwingend geändert werden müßte. Die SSI-Einbindung nutzt den Apache zum Auffinden der korrekten Datei, es wirken also auch Weiterleitungen. Und generell favorisiere ich, sofern in irgendeiner Weise Template-Engines zur Anwendung kommen, sowieso den generellen Einsatz von mod_rewrite für den gesamten URL-Raum, um schon gleich im allerersten Schritt eine Virtualisierung des URL-Raumes zu erreichen, den man dann auf physikalische Dateien abbilden kann, ohne eine zwangsweise 1:1-Verknüpfung zwischen URL und physikalischer Datei benutzen zu müssen.
Den zu errichtenden URL-Raum virtuell zu gestalten stellt nach meiner Meinung jedenfalls einen erheblichen Vorteil für die Programmierung dar, insbesondere beim Einsatz von Template-Engines.
Beim Includen mit PHP scheint mir, dass man – ohne riesigen Aufwand zu betreiben – für ewig an die einmal gewählte Lösung gebunden ist. Hat man einen Schnipsel mit
readfile()
eingebunden, kann man in diesen kein PHP einfügen, da man den dann ja mitinclude()
einfügen müsste und das in allen HTML-Quelltexten ändern müsste. Bliebe, von vornhereininclude()
zu verwenden – ob das so sinnvoll ist?
Mit einer vernünftigen Template-Lösung kämen solche Probleme wohl erst garnicht auf, weil man es grundsätzlich vermeiden könnte, eine Inhaltsdatei mit ergänzender, mitten im Content eingefügter Programmierung zu verunstalten.
- Sven Rautenberg