PHP-Tutorial: Eigene Funktionen

Ein Grundbaustein jeder höheren Programmiersprache sind Funktionen. Ohne sie wären komplexe Berechnungen schlecht denkbar, jeder sich wiederholende Codeteil müsste an jeder verwendeten Stelle neu geschrieben werden. Durch Funktionen lässt sich häufig benutzter Code auslagern und bei Bedarf aufrufen.
PHP hat schon eine ganze Reihe nützlicher Funktionen implementiert (siehe Funktionsreferenz), um den eigenen Code möglichst klein und übersichtlich zu halten muss man sich oftmals eigene Funktionen erstellen.
Eine Funktion ist im groben wie folgt aufgebaut:

1
2
3
4
function FUNKTIONSNAME (PARAMETER1, PARAMETER2)
{
PHP-CODE
}

Eingeleitet wird sie durch das Schlüsselwort function worauf der eigentliche Name der Funktion folgt. Der Name unterliegt der selben Namensfindung wie bei den Variablen (nur Zahlen, Buchstaben und Underline, beginnend mit Buchstaben oder Underline). Nach dem Namen werden die erwarteten Parameter, beliebig viele durch Kommata getrennt, in Klammern angegeben. Wird kein Parameter erwartet, können die Klammern leer gelassen werden, sie müssen aber auf jedenfall mitgeschrieben werden. Danach beginnt der eigentliche Code der Funktion in geschweiften Klammern, hier kann eigener PHP-Code stehen, der beim Aufruf der Funktion ausgeführt wird.
Innerhalb der Funktion kann mit den Parametervariablen gearbeitet werden, es können selbstverständlich auch neue Variablen angelegt werden, nur kann man nicht auf die Variablen ausserhalb der Funktion zugreifen (diese muss man als Parameter übergeben wenn sie in der Funktion gebraucht werden).
Funktionsparameter können optional sein, das heißt ihnen wird ein Standardwert zugewiesen, wenn kein Parameter übergeben wird.
Mit dem Wörtchen return kann man einen in der Funktion berechneten Wert zurückgeben, hiermit wird die Funktion auch beendet.
Doch nun genug der Theorie, hier ein Beispiel:

1
2
3
4
5
6
7
8
function addiere ($zahl1, $zahl2 = 10)
{
$ergebnis = $zahl1 + $zahl2;
echo "ECHO in der Funktion: ";
echo $zahl1 . " + " . $zahl2 . " = " . $ergebnis . "<br/>";
return $ergebnis;
echo "Dies wird niemals ausgegeben";
}

Wie der Name vermuten lässt, berechnet diese Funktion das Ergebnis der Addition. Zusätzlich wird die Berechnung ausgegeben und der erhaltene Wert "returned". Da eine Funktion nach einem return abgebrochen wird (das Ergebnis wird durch das return zurückgegeben, also muss die Funktion fertig sein), wird das letzte echo nie ausgeführt.
Der zweite Parameter ist hierbei optional, wird er beim Aufruf nicht angegebem weisen wir ihm die 10 zu. Aufgerufen wird die Funktion mit ihrem Namen:

1
2
3
$ret1 = addiere (1, 3);
$ret2 = addiere (5);
echo "Rueckgabe: " . $ret1 . " und " . $ret2 . "<br/>";

Hierfür würde die Ausgabe wie folgt lauten:

1
2
3
ECHO in der Funktion: 1 + 3 = 4
ECHO in der Funktion: 5 + 10 = 15
Rueckgabe: 4 und 15

Damit sollte das Prinzip einer Funktion klar sein.

© 2009-2017 by Martin Scharm