Bevor es endlich losgeht...

…muss natürlich erst einmal darauf eingegangen werden, was PHP nun ist. Auf den nachfolgenden Seiten findest du eine Einführung in die Programmiersprache PHP. Du lernst anhand kleiner Beispiele die Syntax kennen und verstehen. Außerdem erhältst Du einen Überblick über die wichtigsten grundlegenden Funktionen.

Was PHP ist

PHP ist eine Skriptsprache, die serverseitig verarbeitet wird und deren Befehle direkt in HTML-Dokumente geschrieben werden können. Um PHP-Skripte auszuführen, wird ein Server benötigt, der entsprechend konfiguriert ist. Wie Du einen Server einrichtest (auf Windows und Linux) findest du hier.

Die meisten Webserver sind so konfiguriert, dass Du den PHP-Dateien eine bestimmte Erweiterung geben musst. Ohne diese würde der Webserver die Datei nicht an den PHP Prozessor weiterleiten. Für gewöhnlich werden die Dateierweiterungen .php .php3 .php4 und .php5 unterstützt. Aber: Man ist fast immer auf der sicheren Seite, wenn man das Dokument mit .php speichert.

PHP kannst Du mit jedem Texteditor schreiben. Ich empfehle dir einen Editor, der die geschriebene Syntax farblich hervorhebt. So behältst Du den Überblick über lange Skripte. Außerdem sollte der Editor auch das Skript direkt auf Tastendruck, oder auch sofort, überprüfen können, ohne den Browser öffnen zu müssen und die Seite neu zu laden. Meine Empfehlung ist der Editor Geany, dieser ist kostenlos und ist für Linux, Windows und Mac verfügbar. Einen Überblick über verschiedene Editoren zeigt diese Seite.

Syntax

Der PHP-Quellcode kann direkt in den HTML-Text geschrieben und auch von HTML-Texten unterbrochen werden. PHP arbeitet den Code von oben nach unten ab. Du benötigst eine Kennzeichnung, die dem PHP-Prozessor mitteilt, wann PHP beginnt und endet. Innerhalb des als PHP gekennzeichneten Abschnitts darf kein reines HTML stehen. Es gibt dafür vier verschiedene Schreibweisen.

Der XML-Stil wird in Zukunft am meisten verwendet. Ich empfehle dir, ausschließlich diesen einzusetzen. Du bist damit unabhängig von Einstellungen in der INI-Datei und damit ist eine einfache Portierbarkeit deiner Skripte von einem Server auf den anderen gewährleistet. Dazu gibt es keine Probleme, falls Du andere Dateien im XML-Format verarbeiten musst.

HTML-Code...
...
<?php // PHP-Kommentar: Öffnen des Anweisungsblocks für PHP
 
// PHP-Quelltext
 
?> <!-- HTML-Kommentar: Schließen des besagten Blocks -->

oder auch

<?PHP
 
// PHP-Quelltext
 
?>

Der SGML-Stil ist eine kürzere Lösung:

<? // öffnen
// PHP-Quelltext
?> <!-- schließen -->

Diese Variante kann mit den Erweiterungen für XML-Verarbeitung jedoch Fehler verursachen, da in XML der Öffnen-/Schließen-Tag genau derselbe ist.

Eine weitere Variante bindet PHP ähnlich wie JavaScript in den Quelltext ein:

<script language="php" runat="server">
 
// PHP-Quelltext
 
</script>

ASP-Puristen mögen die folgende Variante meist sehr:

<%
 
// PHP-Quelltext
 
%>

Kommentare

Kommentare sind ein wichtiges Werkzeug für den Programmierer. Sie erleichtern es, den Überblick über die Skripte zu behalten. Des weiteren ist der Austausch von Quelltexten mit anderen Entwicklern einfacher, da die Kommentare auch diesem den Überblick erleichtern.

Manchmal werden Kommentare auch nur genutzt, um kurzzeitig einzelne Anweisungen des Quelltextes zu deaktivieren.

Willst du über mehrere Zeilen kommentieren, so sei dir diese Variante auf den Weg gegeben:

<?php
/*Mit dem Schrägstrich und dem direkt folgenden Stern öffnen wir einen Mehrzeiligen Kommentar-Block.
Geschlossen werden solche Blöcke mit einem Sternchen und einem folgendem Schrägstrich: */
?>

Für kurze Kommentare verwendest du besser die der Programmiersprache C entnommene Schreibweise:

<?php
// Durch Doppel-Schrägstriche Öffnen wir ein einzeiligen Kommentar
// Wichtig ist, dass in dieser Zeile ab dem Kommentar kein Code mehr ausgeführt werden kann.
?>

Kommentare dürfen auch abgeschlossenen Anweisungen folgen:

<?php
$zeit = time(); /* Kommentar */
echo $zeit; // Kommentar
?>

Anweisungen

Anweisungen werden von oben nach unten abgearbeitet. Das heißt, dass zuerst Befehl1 und dann Befehl2 ausgeführt wird. PHP unterstützt:

  • Zuweisungen
  • Funktionsaufrufe
  • Bedingungen
  • Schleifen

Dabei ist zu beachten, dass in PHP genau wie in C++ Befehle mit einem Semikolon(„;“) abgeschlossen werden. Die erste Anweisung, die Dir im weiteren Verlauf noch häufig begegnen wird, heißt echo. Dieser Befehl gibt einen festgelegten Text an den Browser aus.

<HTML><HEAD><TITLE> Die Anweisung echo</TITLE>
</HEAD>
<BODY>
<?php
 
echo ("Meine erste Ausgabe an den Browser!"); //Anweisung
 
?>
</BODY>

Ausgabe:
Meine erste Ausgabe an PHP! Aber auch hier gibt es eine alternative Schreibweise des Befehls echo:

<?php
 
echo "Auch diese Form von echo funktioniert.";
 
?>

Die zweite Variante wird öfter verwendet, und sollte deswegen auch genutzt werden. Allerdings geht hierbei etwas verloren, dass auch echo eine Funktion ist, die aufgerufen wird.

Unterdrücken von Sonderzeichen

Einige Ausdrücke können in PHP gegebenenfalls anders interpretiert werden, als Du es vielleicht zur Zeit erwartest, wie das folgende Skript demonstriert.

<?php
 
echo "$var ist eine "Variable".";
 
?>

Dieses Skript wird nicht ausgeführt, da die Anführungszeichen um das Wort Variable als PHP-Syntax gedeutet werden. Außerdem wird $var nicht ausgegeben, denn dieser Begriff wird als Variable interpretiert. Um diese Fehlinterpretation zu verhindern, setzt du einen Backslash (\) vor die Sonderzeichen:

<?php
echo "\$var ist eine \"Variable\".";
?>

Ausgabe:
$var ist eine „Variable“.

Allerdings gibt es auch eine Variante, welche es erlaubt, Anführungszeichen normal zu setzen und zwar ist es die Verwendung der einfachen Anführungszeichen:

<?php
echo '\$var ist eine "Variable".';
?>

Ausgabe:
$var ist eine „Variable“.
Alle anderen Sonderzeichen müssen hierbei natürlich weiterhin mit dem Backslash ausmaskiert werden.

Blöcke und Strukturen

PHP-Skripte werden durch Kontrollstrukturen gesteuert. Im Wesentlichen sind das Schleifen und Bedingungen. Wie schon bei den PHP-Begrenzungen mit <?php ?> im HTML-Gerüst müssen auch Strukturen in PHP begrenzt werden. Dazu verwendet man geschweifte Klammern:{ PHP-Code } .

<?php
$test = 1;
if ($test == 1)
{
   echo "Das ist eine Bedingung mit if";
}
?>

Jede Struktur, die von geschweiften Klammern eingeschlossen wird, ergibt einen sogenannten Anweisungsblock. Auch dieser darf durch HTML unterbrochen werden:

<?php
$test = 1;
if ($test == 1)
{
 ?>
 Das ist eine Bedingung mit if.
 <?php
}
?>

Achte bitte darauf, dass der Block ordnungsgemäß durch eine geschweifte Klammer beendet wird. Anweisungsblöcke dürfen auch verschachtelt werden:

<?php
$test = 1;
if ($test == 1)
{
   if ($test !== 0)
   {
     echo "Das ist eine Bedingung mit if";
   }
}
?>

Mehr zu if kannst du bei der Programmsteuerung finden.

PHP-Dateien einbinden

Soll ein PHP-Skript eine weitere Datei einbinden, bietet PHP die Anweisungen include, require, include_once und require_once. Damit bist du in der Lage, Programmstrukturen auszulagern oder einfach Inhalte in deine Seite oder dein Skript zu integrieren.

Und jetzt nochmal ganz langsam

Programmcode, der mit include oder require eingebunden wird, verhält sich so, als würde er genau an dieser Stelle stehen. Steht include beispielsweise innerhalb einer Funktion, so besitzen Variablen in der eingebundenen Datei auch lokale Gültigkeit.

Verwende include_once oder require_once an Stelle von include oder require, um sicher zu stellen, dass der jeweilige Programmcode nur einmal eingebunden wird. Sonst meckert PHP, wenn dadurch etwa Variablen doppelt definiert werden.

Bezüglich der Programmlogik verhalten sich include und require gleich. Sie unterscheiden sich lediglich in der Fehlerbehandlung. Tritt beim Einbinden mit include ein Fehler auf, so wird eine Warnung ausgegeben. Wenn du jedoch mit require so ein Problem hast, bedeutet dies, dass das Skript abgebrochen wird.

<?php
 include("dateiname.php"); // Alternativ ohne Klammern.
 require("dateiname.php"); // Genauso wie bei include.
?>


Auf der nächsten Seite geht es weiter mit der Variablendefinition.