/backup/drscream

doc.

1. Was ist PHP?

PHP (rekursives Akronym fuer ”PHP: Hypertext Preprocessor”, urspruenglich ”Personal Home Page Tools”) ist eine Skriptsprache mit einer an C bzw. Perl angelehnten Syntax, die hauptsaechlich zur Erstellung dynamischer Webseiten verwendet wird. Bei PHP handelt es sich um Open-Source-Software.


PHP zeichnet sich besonders durch die leichte Erlernbarkeit, breite Datenbankunterstuetzung und Internet-Protokolleinbindungen, sowie die Verfuegbarkeit zahlreicher, zusaetzlicher Funktionsbibliotheken aus. Es existieren zum Beispiel Bibliotheken, um allein mit PHP GTK-Anwendungen zu entwickeln.
PHP ist eine serverseitig interpretierte Sprache. Das bedeutet, dass sie – im Gegensatz zu HTML oder weitestgehend JavaScript – den Quelltext nicht direkt an den Browser uebermittelt, sondern ihn erst vom Interpreter auf dem Webserver ausfuehren laesst. Die Ausgabe des Skriptes wird dann an den Browser geschickt. Die Ausgabe ist in den meisten Faellen eine HTML-Seite, es ist aber auch moeglich, mit PHP andere Datentypen wie z.B. Bilder oder PDF-Dateien zu generieren.


Mit PHP lassen sich aber ebenso auch Skripte wie z.B. in Perl schreiben, die auf dem ausfuehrenden Rechner bestimmte Aufgaben durchfuehren. Mittels der GTK-Erweiterung lassen sich auch Skripte mit grafischer Oberflaeche schreiben.


Um eine PHP-Datei ausfuehren zu koennen, benoetigt man ein System, das mit den in der Datei enthaltenden Anweisungen umzugehen weiß. Aus diesem Grund wird durch eine Schnittstelle (beispielsweise ISAPI oder CGI) der Interpreter von einem Serverdaemon bzw. Serverdienst (in der Regel Apache oder IIS) ausgefuehrt. Ein typisches System mit solch einer Konfiguration inklusive MySQL-Datenbank wird LAMP bzw. WAMP genannt.

2. Funktionsweise von PHP

  1. Zunaechst startet ein Client (Browser) eine Anfrage fuer eine PHP-Datei.
    Die Anfrage wird an den entsprechenden Server weitergeleitet (hier: ueber das Internet).
  2. Der Server (Webserver) nimmt die Anfrage entgegen und laedt die PHP-Datei von seiner Festplatte.
  3. Anschließend uebergibt der Webserver die PHP-Datei an den PHP-Interpreter.
  4. Der PHP-Interpreter arbeitet das PHP-Skript ab.
  5. Anschließend gibt der Interpreter das Ergebnis seiner Arbeit (meist in Form einer HTML-Datei, aber auch Bilder oder PDF-Dokumente sind moeglich) an den Webserver zurueck.
  6. Der Server liefert anschließend die Daten an den Client (Browser) zurueck.

3. Code Beispiele

Hello World

    <?php
   echo 'Hello World!';
?>
Dies ist eine einfache Anweisung, die ”Hello World!” in die Ausgabe schreibt. Eine PHP-Anweisung wird immer mit einem Semikolon abgeschlossen und beinhaltet einen String zwischen zwei Fußzeichen oder zwei Zollzeichen. Zu beachten ist dabei, dass bei der Verwendung von Fußzeichen keine Variablen interpretiert werden, sondern jene als solche dargestellt werden, was bei Zollzeichen nicht der Fall ist. Dazu jedoch spaeter mehr. Genauer betrachtet ist echo eine Funktion, die aber eine Ausnahme darstellt, da bei ihr die Argumente nicht in runde Klammern eingeschlossen werden muessen.

Kommentare

    <?php
  // Dies ist ein Kommentar, dessen Ende das letzte Zeichen dieser Zeile ist
          #  Dies ist auch ein Kommentar, analog zum "//"-Kommentar oben
          /* Dies ist ein Kommentar der ueber
             mehrere Zeilen verlaufen kann
             und hier zu Ende geht. */
?>

Variable

    <?php
  $str = 'Hello World!';
          echo $str;
?>
Die Anweisung $str = ’Hello World!’; legt eine neue Variable mit dem Namen str an und weist dieser den Wert Hallo Welt! zu. Zu beachten ist, dass Variablen durch ein vor ihrem Namen stehendes $ gekennzeichnet werden.

Die Anweisung echo $str; gibt hier den Inhalt der Variable $str aus.


Soll der Name einer Variablen ueber die Ausgabe-Funktion ausgegeben werden, so muss es bei Verwendung von Zollzeichen mit einem vorangehenden Backslash dargestellt werden.

Beispiel:
    <?php
 $str = "Hello World!";

         echo '$str';   // Ausgabe: "$str"
         echo '\$str';  // Ausgabe: "\$str"
         echo "$str";   // Ausgabe: "Hello World!" (Inhalt der Variable)
         echo "\$str";  // Ausgabe: "$str"

         echo '$';   // Ausgabe: "$"
         echo '\$';  // Ausgabe: "\$"
         echo "$";   // Ausgabe: "$"
         echo "\$";  // Ausgabe: "$"
 ?>
Variablen benoetigen in PHP keine explizite Datentyp-Deklaration. Der Datentyp ergibt sich aus dem Kontext. Im Beispiel wird die Zeichenkette Hello World! zugewiesen. Somit erhaelt die Variable $str automatisch den Datentyp String. Man nennt diese Art der Datentypisierung auch loose typing.

Konstante

    <?php
  define('STRING', 'Hello World!');
          echo STRING;
?>
Die Anweisung define(’STRING’, ’Hello World!’); legt eine neue Konstante mit dem Namen STRING fest und weist dieser den Wert Hello World! zu. Im Unterschied zu Variablen koennen Konstanten, sind sie einmal definiert, nicht mehr veraendert werden. Außerdem sind sie an jeder Stelle in einem PHP-Skript erreichbar, vergleichbar mit den superglobalen Variablen.

Funktion

    <?php
  function sayHello() {
             return 'Hello World!';
          }

  echo sayHello();
?>
Eine Funktion wird durch das Konstrukt function Funktionsname (Eingabe-Parameter) { Anweisungscode } definiert. Die Anweisung return ’Hello World!’; liefert den Wert Hello World! zurueck und beendet damit die Funktion. Der Wert der zurueckgegeben wurde, wird hier durch die Anweisung echo sayHello(); ausgegeben.

Datenbankanbindung

Verbindung mit einer Datenbank (MySQL) in PHP und Ausgabe der Daten auf dem Bildschirm.
    <?php
  mysql_connect('localhost', 'benutzer', 'passwort');
          mysql_select_db('datenbankname');
          $erg = mysql_query('SELECT * FROM tb_test');
          while ($ausgabe = mysql_fetch_array($erg)) {
            echo $ausgabe['tabellen_titel'];
          }
?>
Die Funktion mysql_connect stellt eine Verbindung zu einem MySQL-Server her. Als Argumente muessen der Host der Datenbank, der Benutzername und das Passwort angegeben werden. Die Funktion mysql_select_db waehlt eine Datenbank aus, die benutzt werden soll. Im naechsten Schritt werden alle Daten aus der Tabelle tb_test abgefragt und mittels einer while-Schleife wird von jedem Datensatz der Wert der Spalte tabellen_titel ausgegeben.
 
frubar.net gentoo.org slackware.com last.fm