studyklar
IProg · Skript 4 · Abschnitt 1

PHP auf dem Web-Server: vom Aufruf zur HTML-Seite

PHP-Code läuft nicht im Browser, sondern auf dem Web-Server. Hier steht, was zwischen dem Aufruf einer PHP-Seite und der fertigen Anzeige passiert, und wie PHP im Code markiert wird. Rechts wandert die Anfrage durch die Stationen. Mit Weiter geht es Schritt für Schritt voran.

Worum es geht

Skript 04, Folien 3 bis 11: Einführung in PHP, Ablauf auf dem Web-Server, Syntax.

Die Frage: Ein Browser ruft eine PHP-Seite auf. Wer führt den PHP-Code aus, und was kommt am Ende beim Browser an?

So gehen wir vor:

  1. Was PHP ist und wie es im Web-Server steckt.
  2. Der Ablauf einer Anfrage in vier Stationen.
  3. Was passiert, wenn PHP im Web-Server fehlt.
  4. Wie man PHP-Code in einer Datei markiert.
  5. Eine kurze Frage im Stil der Klausur.
Merke: Der Browser versteht HTML, aber kein PHP. Irgendwer muss den PHP-Code also vorher ausführen.

Eine Skriptsprache für den Server

Skript · Was ist PHP? (Folie 3)
  • „PHP: Hypertext Preprocessor“, ursprünglich „Personal Home Page Tools“.
  • Syntaktisch angelehnt an Perl und C, später Java.
  • Entwickelt von Rasmus Lerdorf, 1995.
  • PHP 8 seit 11/2020, unterstützt Just-in-time-Kompilierung (PHP übersetzt Code erst beim Ausführen in schnellen Maschinencode).

Eine Skriptsprache ist eine Programmiersprache, deren Programme (Skripte) nicht vorher in ein fertiges Programm übersetzt werden. Ein anderes Programm liest sie und führt sie direkt aus.

PHP läuft serverseitig: auf dem Rechner, der die Webseite ausliefert, nicht beim Besucher. Laut Folie 4 ist PHP bei serverseitigen Web-Anwendungen seit vielen Jahren die mit Abstand häufigste Sprache.

Bei jedem Aufruf interpretiert

Skript · PHP Ausführung (Folie 7)
  • PHP ist ursprünglich eine reine Skriptsprache.
  • Der Code wird bei jeder Ausführung interpretiert.
  • Die Zend-Engine kann in (plattformunabhängigen) Bytecode übersetzen; ein Bytecode-Cache vermeidet mehrfache Generierung.

Interpretiert heißt: Ein Programm, der Interpreter, liest das Skript Zeile für Zeile und führt es aus. Bei PHP geschieht das bei jeder Ausführung neu.

Der Interpreter von PHP heißt Zend-Engine. Sie kann das Skript in Bytecode übersetzen, eine Zwischenform, die schneller auszuführen ist. Ein Bytecode-Cache merkt sich diesen Bytecode, damit er nicht bei jedem Aufruf neu entsteht.

Ohne Web-Server startet man ein Skript auf der Kommandozeile mit php skript.php.

Noch 12 Schritte bis zum Ergebnis
Den ganzen Lösungsweg sehen Studierende und Lehrende der HS KL. Registriere dich mit deiner Adresse @stud.hs-kl.de oder @hs-kl.de, dann geht es hier direkt weiter.

Abbildung 1

  1. 1 Browser
    ruft http://localhost/meins.php auf
  2. 2 Web-Server (Apache)
    liest die Datei c:\xampp\htdocs\meins.php
  3. 3 PHP-Modul im Web-Server
    führt das Skript aus, dabei entsteht eine HTML-Seite
  4. 4 Browser
    bekommt eine reine HTML-Seite und zeigt sie an
LegendeDer Weg einer Anfrage nach einer PHP-Seite.