Eine Funktion ist ein eigenständiger benannter Programmabschnitt. Die Ausführung der Anweisungen, die in diesem Abschnitt enthalten sind, kann über den Namen der Funktion initiiert werden. In der Regel wird einer Funktion ein Wert übergeben. Der Programmcode der Funktion verarbeitet den Wert und gibt das Ergebnis der Verarbeitung zurück. Abgesehen von den bereits vorhandenen internen PHP-Funktionen können Sie auch eigene Funktionen programmieren.
Interne Funktionen
Eine interne PHP-Funktion ist beispielsweise substr. Sie wird als interne Funktion bezeichnet, weil sie, wie alle anderen PHP-Befehle (z. B. echo) auch, in PHP integriert ist. Sie können mit substr eine Teilzeichenfolge aus einer Zeichenfolge extrahieren. Dazu übergeben Sie substr die gewünschte Zeichenfolge und teilen der Funktion mit, ab welchem Zeichen der Zeichenfolge die Teilzeichenfolge entnommen werden soll und wie viele Zeichen extrahiert werden sollen. Dazu ein Beispiel:
$zeichenfolge = "Diese schöne Zeichenfolge ist sehr lang.";
$teilzeichenfolge = substr($zeichenfolge, 13, 12);
echo $teilzeichenfolge;
Wenn Sie dieses Programm ausführen, wird auf der Webseite das Wort »Zeichenfolge« ausgegeben. Werfen wir einen genauen Blick auf den hierfür verantwortlichen Programmcode.
Zunächst wird der Variablen $zeichenfolge der Text »Diese schöne Zeichenfolge ist sehr lang.« zugewiesen. Dann folgt der eigentlich interessante Teil. Der Variablen $teilzeichenfolge wird scheinbar die Funktion substr zugewiesen. Das, was jedoch wirklich geschieht, wenn der PHP-Interpreter auf diese Zeile stößt, ist Folgendes:
Der Interpreter überprüft, ob es eine interne Funktion namens substr gibt. Wenn er diese Funktion findet, übergibt er ihr den Inhalt der Variablen $zeichenfolge, den Wert 13 und den Wert 12, und zwar genau in dieser Reihenfolge. Der Programmcode innerhalb der substr-Funktion nimmt nun den Inhalt der Variablen $zeichenfolge und beginnt, ab dem dreizehnten Zeichen zwölf Zeichen auszulesen. Diese zwölf Zeichen werden als Ergebnis des Funktionsaufrufs zurückgegeben. In unserem Beispiel bilden diese zwölf Zeichen das Wort »Zeichenfolge«. Sie könnten somit zum besseren Verständnis die Zeile
ersetzen, weil das Wort »Zeichenfolge« das Ergebnis des Funktionsaufrufs ist. Dieses Ergebnis wird also in der Variablen $teilzeichenfolge gespeichert und schließlich ausgegeben.
Eigene Funktionen
PHP bietet Ihnen auch die Möglichkeit, eigene Funktionen zu generieren. Dies ist besonders dann sinnvoll, wenn Sie eine bestimmte Funktionalität mehrmals innerhalb eines PHP-Programms benötigen. Stellen Sie sich beispielsweise vor, Sie müssten häufig eine komplizierte Berechnung durchführen. Anstatt nun überall dort, wo diese Berechnung erforderlich ist, den hierfür erforderlichen Programmcode einzufügen, schreiben Sie eine Funktion, die diese Aufgabe übernimmt. Der folgende Programmcode demonstriert dies (mit einer etwas weniger komplizierten Berechnung):
Hier wird zunächst eine Funktion namens MwStBerechnen definiert. Beim Aufruf der Funktion wird ihr ein Wert übergeben, der in der Variablen $Betrag abgelegt wird. Der Programmcode der Funktion, der sich innerhalb der geschweiften Klammern befindet, berechnet die Mehrwertsteuer und gibt diese zurück. Die Syntax einer Funktion lautet somit wie folgt:
function Funktionsname(Wert1, Wert2, Wert3, …)
{
<Programmcode, der die Werte verarbeitet, die der
Funktion übergeben wurden>
}
Der Aufruf der Funktion erfolgt in der folgenden Zeile:
$Mehrwertsteuer = MwStBerechnen(2512.23);
Hier wird der Funktion der Wert 2512,23 übergeben. Beachten Sie, dass Sie anstelle des Dezimalkommas einen Punkt verwenden müssen, wenn Sie Kommazahlen schreiben möchten. Das Ergebnis der Mehrwertsteuerberechnung wird dann der Variablen $Mehrwertsteuer zugewiesen.