Server-Client-Kommunikation

Grundlegendes

Um mit PHP zu programmieren, muss man erstmal verstehen, was PHP überhaupt ist, wo es arbeitet, und was es dort tut.

PHP wurde 1995 von Rasmus Lerdorf entwickelt, um dynamische und gleichzeitig einfach zu programmierende Webanwendungen zu ermöglichen. PHP steht unter anderem für Hypertext Preprocessor„. Also ein „Prozessor der den Hypertext vor der Ausgabe bearbeitet“. Wie genau, dass seht ihr weiter unten. Inzwischen wird bereits an PHP6 gearbeitet - in diesem Tutorial wird allerdings PHP5 verwendet. Dies ist nicht weiter schlimm, da die grundlegenden Befehle, die hier erklärt werden, gleich bleiben.

Hier sieht man wie und wo PHP arbeitet:

PHP ist auf dem Server und wird nur dort ausgeführt. Das heißt, der Besucher hat normalerweise keine Möglichkeit den PHP-Code einzusehen.

Der Client (Browser des Besuchers der Seite) sendet eine Anfrage für eine Datei an den Server.

Existiert die Datei und hat sie die Endung “.php„, so öffnet der Server die Datei (in diesem Fall die Datei „index.php“) und übergibt den Inhalt dem PHP-Interpreter. Dieser arbeitet den Code Zeile für Zeile von oben nach unten ab, und führt die Anweisungen aus. Hat man einen Fehler im Code gemacht, so gibt der Interpreter eine Fehlermeldung, meistens mit Zeilenangabe, aus (sorgfältig lesen und bei Problemen, die man im Forum vorstellt immer gleich mit angeben!).

Der Interpreter kann hier auch andere Dateien aufrufen oder z.B. eine Verbindung zu einer Datenbank herstellen. Hat der Interpreter die Datei durchgearbeitet, gibt er dem Client die Ausgaben zurück.

Meistens wird dem Client eine HTML-Datei gesendet, im PHP-Code wurde also HTML-Code ausgegeben. Dies wird allerdings nicht mit der Endung festgestellt, sondern mit dem Header. Man kann mit PHP also auch Grafikdateien erstellen.

Der Interpreter prüft und führt den Code jedes mal neu aus - PHP ist also eine „interpretierte Sprache“. „Kompilierte Sprachen“, wie z.B. C, die den Code einmal testen und dann in eine eigenständige ausführbare Datei verwandeln, sind normalerweise schneller. Der Vorteil von interpretierten Programmiersprachen ist jedoch, dass diese Programme auf jedem System lauffähig sind - wenn es einen kompatiblen Interpreter gibt.


Startseite | Index || Zurück | Weiter