Skip to main content

7. PHP

PHP ist eine Scriptsprache, welche hauptsächlich zur Erstellung dynamischer Webseiten oder Webanwendungen verwendet wird. PHP ist freie Software, welche unter eigener Lizenz verbreitet wird und sich durch breite Datenbank-Unterstützung sowie die Verfügbarkeit zahlreicher Funktionsbibliotheken auszeichnet. PHP hiess ursprünglich «Personal Home Page Tools» und wird heute mit «PHP: Hypertext Preprocessor» bezeichnet. Die Scriptsprache wurde von Rasmus Lerdorf erfunden und erschien am 8. Juni 1995.

PHP wurde Anfang 2013 auf etwa 244 Millionen Websites eingesetzt und Anfang 2019 von 79% aller Websites als serverseitige Programmiersprache verwendet. PHP ist die am häufigsten verwendete serverseitige Programmiersprache und ist bei praktisch allen Hostern vorinstalliert.

7.1 Funktionsweise

PHP ist ein System, das PHP-Code serverseitig verarbeitet. Das bedeutet, dass der Quelltext nicht an den Webbrowser übermittelt wird, sondern an einen Interpreter auf dem Webserver. Erst die Ausgabe des PHP-Interpreters wird an den Browser geschickt. In den meisten Fällen ist das ein HTML-Dokument, wobei es mit PHP aber auch möglich ist, andere Dateitypen, wie Bilder oder PDF-Dateien, zu generieren.

Um eine PHP-Datei im Rahmen einer Webanwendung ausführen zu können, benötigt man ein System, das mit den in der Datei enthaltenen Anweisungen umgehen kann. Aus diesem Grund wird durch eine Schnittstelle, wie ISAPI oder CGI, der Interpreter von einem Server-Daemon oder Server-Dienst, wie Apache oder IIS, ausgeführt. Die Kombination von Linux/Windows/macOS als Betriebssystem, Apache als Webserver, MySQL als Datenbanksystem und PHP wird LAMP (für Linux), WAMP (für Windows) oder MAMP (für Mac OS X) genannt.

Fertige LAMP-, MAMP- und WAMP-Pakete, die das einzelne Laden und Konfigurieren von Paketen aus dem Internet unnötig machen, werden etwa im Projekt XAMPP entwickelt. Hier gibt es Versionen für Linux, Solaris, Windows und Mac OS X, die jedoch nur für Test- und Entwicklungsumgebungen genutzt werden sollen.

Da PHP normalerweise in einer Webserver-Umgebung läuft, unterliegt es auch dem zustandslosen HTTP. Jede PHP-Seite belastet den Webserver durch den Interpreter, zudem arbeitet der Interpreter den Quelltext bei jedem Aufruf erneut ab. Das mindert die Reaktionsgeschwindigkeit des Servers und erhöht die Last. Um dem entgegenzuwirken, stehen verschiedene Bytecode-Caches zur Verfügung, die eine zur Ausführung vorbereitete Version des Programmes zwischenspeichern und somit den Zugriff auf diese Datei beim nächsten Aufruf beschleunigen. Mit PHP lassen sich auch kommandozeilenorientierte Skripte schreiben, die vom Internet unabhängig sind.

7.2 Was kann PHP?

PHP ist hauptsächlich auf serverseitige Skripte fokussiert. Daher kann man damit z.B. Formulardaten sammeln, dynamische Inhalte für Webseiten generieren oder Cookies senden und empfangen. Aber PHP kann noch viel mehr.

Es gibt drei Hauptgebiete, in denen PHP-Skripte genutzt werden.

  • Serverseitige Programmierung: Dies ist das traditionelle und auch Hauptfeld von PHP. Es werden drei Dinge benötigt, um damit arbeiten zu können: Den PHP-Parser (CGI oder Server-Modul), einen Webserver und einen Webbrowser.

  • Kommandozeilen-Programmierung: Es ist auch möglich PHP-Skripte zu schreiben, die ohne einen Server oder Browser arbeiten können. Dafür wird nur ein PHP-Parser benötigt. Die Art der Nutzung ist ideal für Programme, die regelmässig mittels cron job oder dem Task Scheduler (unter Windows) ausgeführt werden. Die Skripte können ausserdem verwendet werden, um einfache Textprozessierung auszuführen.

  • Schreiben von Desktop-Applikationen: PHP ist dafür nicht die allerbeste Sprache.

7.3 Beispiel

echo "Hallo Welt!";

Ausgabe: Hallo Welt!

Anstatt ein Programm mit vielen Anweisungen zur Ausgabe von HTML zu schreiben, schreibt man etwas HTML und bettet einige Anweisungen ein, die irgendetwas tun (wie hier «Hallo Welt!» auszugeben). Der PHP-Code steht zwischen speziellen Anfangs- und Abschluss-Verarbeitungsinstruktionen, mit denen man in den «PHP-Modus» und zurück wechseln kann.

PHP unterscheidet sich von clientseitigen Sprachen wie Javascript dadurch, dass der Code auf dem Server ausgeführt wird und dort HTML-Ausgaben generiert, die an den Client gesendet werden. Der Client erhält also nur das Ergebnis der Skriptausführung, ohne dass es möglich ist herauszufinden, wie der eigentliche Code aussieht.


Links

PHP
PHP
PHP Handbuch Deutsch
Handbuch
Funktionsreferenz
Referenz
We use cookies
We use cookies on our website. Some of them are essential for the operation of the site, while others help us to improve this site and the user experience. You can decide whether you want to allow cookies or not. Please note that if you reject them, you may not be able to use all the functionalities of the site.