Was ist PHP und wofür wird es eingesetzt?
PHP ist eine Programmiersprache, die auf dem Server arbeitet. Sie entscheidet, was mit Ihren Eingaben passiert, holt Daten aus einer Datenbank und baut daraus die Seite, die Ihr Browser anzeigt. Dieser Text erklärt, was das praktisch bedeutet.
Das lernen Sie
Browser und Server: zwei verschiedene Orte
Jede Webseite entsteht an zwei Orten. Der eine ist Ihr Gerät: dort läuft der Browser, zeigt Texte an, reagiert auf Klicks und führt JavaScript aus. Der andere ist der Server: ein Rechner im Rechenzentrum, auf den viele Menschen gleichzeitig zugreifen. Dort liegen die Daten, dort gelten die Regeln, und dort läuft PHP.
Diese Trennung ist keine technische Spitzfindigkeit, sondern der Grund für fast alle Eigenschaften von Webanwendungen. Was im Browser passiert, kann jeder Besucher verändern — es ist ein Programm, das auf seinem Gerät läuft. Was auf dem Server passiert, bleibt unter Ihrer Kontrolle. Deshalb gehören Preisberechnung, Rechteprüfung und alles, was verbindlich sein muss, auf den Server.
Was PHP bei einer Anfrage tut
PHP wird gestartet, wenn eine Anfrage eintrifft, und beendet, wenn die Antwort geschrieben ist. Dazwischen passiert die eigentliche Arbeit: Eingaben prüfen, Berechtigungen klären, Daten lesen oder schreiben, andere Systeme befragen und die Antwort zusammenstellen.
- 1BrowserDas Formular wird ausgefüllt und abgeschickt.
- 2WebserverNimmt die Anfrage an und übergibt sie an PHP.
- 3PHPPrüft die Eingaben, entscheidet und bereitet die Antwort vor.
- 4DatenbankSpeichert den Vorgang oder liefert gespeicherte Daten.
- 5AntwortDer Browser erhält die fertige Seite oder eine Rückmeldung.
Dieser Ablauf wiederholt sich bei jeder Anfrage, die PHP tatsächlich erreicht. Nicht jede Auslieferung tut das: Bilder, Stylesheets und zwischengespeicherte Seiten gibt der Webserver direkt heraus, ohne PHP zu starten. Wo diese Grenze liegt, entscheidet die Architektur der Anwendung. PHP merkt sich zwischen zwei Anfragen nichts; was erhalten bleiben soll, liegt in einer Datenbank oder in der Sitzung des Benutzers. Das klingt umständlich, hat aber einen praktischen Vorteil: ein Fehler in einer Anfrage belastet die nächste nicht, und ein Server kann sehr viele Anfragen nebeneinander bearbeiten.
Wo PHP heute eingesetzt wird
PHP steckt in Webanwendungen, bei denen Daten verarbeitet und Vorgänge abgebildet werden. Drei Gruppen begegnen uns im Alltag am häufigsten:
Für unsere eigene Arbeit ist die dritte Gruppe die interessanteste: Sie wird selten gezeigt, macht aber einen großen Teil des Nutzens aus. Eine Oberfläche sieht man, eine funktionierende Übertragung merkt man daran, dass niemand mehr Daten doppelt eingibt.
Ein Beispiel aus der Praxis
Eine Urlaubsanfrage im Mitarbeiterportal
Eine Mitarbeiterin wählt zwei Daten und schickt den Antrag ab. Im Browser fällt nur auf, dass das Formular kurz blockiert. Auf dem Server prüft PHP in dieser Zeit: Sind die Daten gültig? Liegt der Zeitraum im aktuellen Jahr? Ist noch Resturlaub vorhanden? Wer ist die zuständige Führungskraft?
Erst danach wird der Antrag gespeichert, eine Benachrichtigung ausgelöst und die Seite mit dem neuen Stand zurückgegeben. Keine dieser Prüfungen ist im Browser verbindlich — was dort läuft, lässt sich verändern. Als sofortige Rückmeldung ist eine Prüfung im Browser sinnvoll und erleichtert das Ausfüllen; entscheiden darf sie nicht. Verbindlich prüft der Server, und zwar bei jeder Anfrage erneut. Das ist der Grund, warum eine scheinbar einfache Maske Entwicklungsaufwand bedeutet: das Formular ist der kleine Teil, die Regeln dahinter sind der große.
Wo PHP nicht die richtige Wahl ist
PHP ist für Anfragen gebaut, die beantwortet und abgeschlossen werden. Für dauerhaft offene Verbindungen, etwa einen Chat mit sofortiger Zustellung an viele Teilnehmer, oder für sehr rechen- und speicherintensive Dauerläufe gibt es oft besser geeignete Werkzeuge. PHP lässt sich dafür zwar auch als dauerhaft laufender Prozess betreiben, das verlangt aber eine andere Architektur als das übliche Anfrage-Modell. Auch alles, was unmittelbar im Browser reagieren soll, bleibt Aufgabe von JavaScript.
In der Praxis ist das selten eine Entweder-oder-Frage. Eine Anwendung besteht meist aus einer PHP-Anwendung für die Fachlogik, JavaScript für die Bedienung und einzelnen Zusatzdiensten für Sonderaufgaben.
Warum die Version zählt
PHP wird weiterentwickelt, und jede Version wird nur eine begrenzte Zeit mit Sicherheitsaktualisierungen versorgt. Welche Versionen das gerade sind, veröffentlicht das Projekt selbst — die Liste unten verweist darauf. Läuft eine Anwendung auf einer Version ohne Unterstützung, bekommt sie keine Sicherheitskorrekturen mehr. Das ist der häufigste Grund, warum eine funktionierende Anwendung trotzdem Arbeit braucht.
Häufige Missverständnisse
Weiterführende Quellen
- PHP-Handbuch (deutschsprachig) offizielle Dokumentation des PHP-Projekts
- Unterstützte PHP-Versionen welche Version noch Sicherheitsaktualisierungen erhält
Über den Autor
Fabian Lücker ist geschäftsführender Gesellschafter der PHP-Schmiede KG in Rheine und seit 2007 in der Softwareentwicklung tätig. Er verantwortet Entwicklung und Konzeption und schreibt hier über Entscheidungen, die in echten Projekten anfallen.
Eine Anwendung im Kopf, aber noch keine Spezifikation?
Für ein erstes Gespräch genügt eine Beschreibung Ihrer Aufgabe und der wichtigsten Abläufe.