PHP – Teil 8: Funktionen

Ein wichtiger Bestandteil von PHP liegt in den sogenannten Funktionen, da ein Großteil der von PHP mitgebrachten Funktionalitäten in genau diese verpackt ist. Doch was bringen Funktionen und wie kann ich sie richtig nutzen? Genau darauf geht dieser Artikel der großen PHP Serie ein.

Was ist eine Funktion?

Eine Funktion kannst du dir als Codeblock vorstellen, dem du einen bestimmten Namen gegeben hast. Sobald du diesen Namen mit dem dazu passenden Codeblock definiert hast, kannst du ihn beliebig oft durch einfaches Aufrufen des Namens ausführen. Dies bietet mehrere Vorteile:

  • Wir müssen Code, der sich öfter wiederholt, nicht ständig kopieren
  • Mit einem durchdachten, beschreibenden Namen wissen wir immer genau, was dieser Codeblock macht
  • Sollte sich etwas an diesem Codeblock ändern können wir es zentral an einer Stelle verändern. Hättest du den Abschnitt ständig kopiert müsstest du alle Vorkommen ändern

Generell gilt: Sobald sich etwas wiederholt sollten wir es in eine Funktion packen. Ob das bereits bei einer einmaligen Wiederholung gemacht wird oder erst, wenn sich abzeichnet, dass wir diesen Codeblock noch öfter benötigen, ist natürlich jedem selbst überlassen.

Woraus besteht eine Funktion?

Eine Funktion besteht immer aus mehreren Bereichen, wobei einige davon optional sind und nicht gegeben sein müssen. Diese Bereiche sind:

  • Das Schlüsselwort function
  • Ein Funktionsname, welcher möglichst aussagekräftig sein sollte. Es gelten dieselben Regeln wie bei Variablennamen
  • Eine Parameterliste – eine Liste mit Werten, die beim Aufruf in die Funktion übergeben werden. Diese Liste kann auch leer sein. Auf die Parameter gehe ich später noch näher ein
  • Ein Codeblock, der ausgeführt wird, wenn die Funktion aufgerufen wird
  • Ein oder mehrere Rückgabewerte, die aus der Funktion an die Stelle zurückgegeben werden, an der sie aufgerufen wurde. Die Rückgabewerte sind optional.

Ein erstes Beispiel

Damit wir sehen, wie so eine Funktion aussehen kann, hier mal ein erstes Beispiel. Die folgende Funktion macht nichts anderes, als zwei Werte zu nehmen, zusammenzuzählen, und das Ergebnis zurückzugeben. Das Ergebnis wird dann nach dem Aufruf ausgegeben.

 

Die Parameter

Im Beispiel oben sehen wir in der Klammer die Parameterliste, in diesem Fall die Variablen $wert1 und $wert2. Diese sogenannten Parameter müssen bei jedem Aufruf der Funktion übergeben werden – im Beispiel wird in $wert1 die Zahl 8 und in $wert2 die Zahl 3 übergeben. Diese Variablen stehen dann nur innerhalb der Funktion zur Verfügung, nicht im restlichen Code.

Wenn wir einen Parameter bereits mit einem Standardwert füllen möchten gibt es hier die Möglichkeit mit den sogenannten Standardparametern. Dabei wird der Variable einfach direkt bei der Definition der Funktion ein Wert zugewiesen. Immer, wenn dieser Parameter dann beim Funktionsaufruf nicht angegeben wird, wird der Standardwert verwendet. Ein Beispiel dazu:

Achtung, diese Standardparameter können in der Parameterliste nur von hinten her angewendet werden, ansonsten kommt der PHP Interpreter durcheinander, welche Variable ihr nun mit welchem Wert füllen wollt. Beispiele:

 

Der Codeblock

Der Codeblock, der auf den sogenannten Funktionskopf (bestehend aus function, Funktionsname und Parameterliste) folgt, kann alles enthalten – Schleifen, Bedingungen, Arrays etc – und wird jedes mal ausgeführt, wenn die Funktion aufgerufen wird. Die einzige Besonderheit in diesem Codeblock liegt in der return Anweisung. Diese kann ein- oder mehrmals im Codeblock vorkommen und gibt bei Aufruf den darauf folgenden Wert an die Stelle zurück, an der die Funktion aufgerufen wurde. Der Funktionsaufruf wird dann also an dieser Stelle quasi durch den zurückgegebenen Wert ersetzt. Zu beachten bei der return Anweisung ist, dass der Aufruf dadurch abgebrochen wird, eventueller folgender Code bis zum Ende des Blocks wird also nicht mehr ausgeführt!

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

*