Hello Paul,
Bin dabei meine statischen Seiten meiner Homepage in PHP's umzuschreiben.
Dabei möchte ich viele Teile auslagern und dann in den jeweiligen Seiten einbinden (z.B. viele der Metadaten im head oder das Gerüst der Seiten, da sie für alle Seiten gleich sind).
Nun die Frage: wäre es besser ich würde die einzelnen einzubindenen Teile in jeweils eine Datei schreiben und dann immer mit "include metadaten_head.php" einbinde oder wär'S vielleicht besser ich würde die Teile in einer einzigen include-Datei in Functionen schreiben und dann per z.B. metadaten_head() einbinden?
Ich nehme an, es geht Dir um die Anzahl der Dateiaufrufe?
Grundsätzlich ist 'include' für statische Inhalte nicht notwendig und daher auch nicht unbedingt zu empfehlen. Ein 'readfile()' wäre da z.B. besser eingesetzt.
http://de.php.net/manual/en/function.readfile.php
Große Webseiten gehen teilweise schon wieder einen anderen Weg. Inhalte, die sich nicht ändern, werden in einem gemeinsamen Seitengerüst zusammengefasst. Dies kann auch automatisch beim Erstaufruf geschehen. Anschließend wird das Ergebnis dann zwischengespeichert (cached). Es müssen also nur noch die variablen Inhalte dazugemischt (merged) werden.
Das spart bei vielen Requests dann richtig Kraft für den Host. Er muss das Dateisystem nicht so sehr quälen. Allerdings gibt es auch intelligente Dateisysteme, die ihreseits häufige Aufrufe zwischenspeichern. Das setzt dann wiederum viel Hauptspeicher voraus. Man dreht also immer weiter am Rad, je mehr man delegiert ...
Ich halte daher ein intelligentes Templatesystem für die beste Lösung. Das System muss das Gesamtkunstwerk aus überschaubaren Einzelteilen zusammenbauen können und dabei die statischen Teile zwischenspeichern, sodass sie beim nächsten Aufruf nicht neu geholt werden müssen.
Liebe Grüße aus dem schönen Oberharz
Tom vom Berg