Meldung

03.07.2008 - Einbinden von PHP-Code

Logisch zusammengehöriger Script-Code wird im Allgemeinen zusammen in einzelnen Script-Dateien gespeichert. Diese ausgelagerten Dateien können mit dem Befehl include zur anschließenden Nutzung einbezogen werden. PHP-Code, der nicht innerhalb von Funktionen oder Klassen steht, wird dabei direkt ausgeführt und das hierdurch gelieferte Ergebnis (Ausgaben des Scripts) wird in die aufgerufene Internetseite integriert. Script-Code, der innerhalb von Funktionsdefinitionen oder Klassendefinitionen steht wird erst bei deren Aufruf bzw. bei der Erzeugung einer Objektinstanz sowie deren Nutzung aufgerufen. Dabei muss nicht unbedingt eine Ausgabe – etwa per echo – erfolgen, die auf der Ergebnisseite sichtbar ist.

Aber auch HTML-Code kann per include- bzw. require-Anweisung integriert werden. Auf diese Weise lassen sich einzelne Passagen des HTML-Quelltextes auslagern, was es dem Webentwickler ermöglicht, das grundlegende Gerüst einer Internetseite direkt und zentral in HTML zu formulieren. Das Grundgerüst der Website – das sogenannte Template – kann auf diese Weise leicht an neue Vorgaben angepasst werden. Dabei sollte grundsätzlich darauf geachtet werden, dass Darstellung (Layout; Farben und Formatierung in CSS-Angaben) und Seiteninhalte (logische Struktur; in (X)HTML formuliert) voneinander getrennt sind. Diese Vorgehensweise wird bei modernen Websites strikt eingehalten.

Im Falle des Einbindens von PHP-Sourcen kann auf die von Funktionen gelieferten Rückgabewerte oder den Inhalt von Variablen, die in der eingebundenen Datei definiert wurden zugegriffen werden. Derartige Variablen werden häfig in Konfigurationsdateien abgelegt, die von allen anderen Seiten benötigt und entsprechend nachgeladen werden – beispielsweise Arrays, in denen Zugangsdaten für den Zugriff auf eine Datenbank gespeichert sind. Ist der Webentwickler sich nicht sicher, ob eine Variable definiert ist oder nicht, sollte er dies stets per isset prüfen, bevor er auf die entsprechende Variable zugreift. Bleibt eine derartige Prüfung aus, so kann dies zu ausgesprochen unschönen Abbrüchen führen, die darüber hinaus auch den Webserver oder die Datenbank ggf. angreifbar machen. Die Beispiele zum Include-Befehl zeigen das Einbinden von Dateien mittels relativen wie auch absoluten Pfadangaben, wobei auch die Rolle des Include-Path angesprochen wird. Auch gibt es Beispiele zu Require und den Varianten include_once und require_once.


Alexander Müller