Eine Funktion in PHP mit Parametern schreiben
Wer sich ein bisschen mit der Programmierung beschäftigt hat und über das "Hello World" hinausgewachsen ist, wird schnell weitere Möglichkeiten suchen seine Programme mit Hilfe einer Funktion zu optimieren. Damit man bei größeren Projekten den Überblick behält und z.B. ähnliche Programmzeilen nicht mehrmals irgendwo verteilt schreiben muss, kann man eigene Funktionen schreiben.
Der Aufbau einer Funktion in PHP
Der Aufbau ist relativ einfach. Ihr müsst Euch vorstellen dass man zuerst einmal angeben muss was jetzt kommt also gibt man als erstes:
function
ein um klar zu machen das jetzt eine Funktion kommt. Das ist das gleiche wie als wenn man "var" schreibt um zu kennzeichnen das man eine Variable deklarieren möchte.
Diese Funktion bekommt jetzt von uns einen Namen, der natürlich aussagekräftig genug sein sollte damit man sofort erkennt was diese überhaupt macht. Nehmen wir mal an wir wollen einfach mal eine Funktion schreiben die nichts weiter macht als "Hello World" auszugeben, dann nennen wir diese einfach mal so:
helloWorld
Ihr könnt natürlich einen ganz anderen Namen vergeben. Wichtig ist später nur das man den Namen benutzen muss um darauf zugreifen zu können.
Eine Funktion wird immer mit Klammern geschrieben, innerhalb dieser Klammern hätte man die Möglichkeit Parameter zu empfangen. Wir werden hier jetzt aber erstmal die Funktion so schreiben das keine Parameterübergabe stattfindet und deshalb sind wir bis jetzt an folgendem Punkt:
function helloWorld()
Damit aber der Bereich abgegrenzt wird wo die Funktion anfängt und auch aufhört braucht man noch die geschweiften Klammern { }. Innerhalb dieser Klammern schreibt man dann sein Programm, welches ausgeführt wird, wenn die Funktion aufgerufen wird. Dann sieht das ganze schon mal so aus:
function helloWorld(){ }
Aufrufen der Funktion in PHP
Die Funktion hat jetzt natürlich noch keinen Inhalt aber kann bereits schon folgendermaßen aufgerufen werden:
helloWord();
Ausgeben von Text
Jetzt hat man natürlich mehrere Möglichkeiten dieses "Hello World" über die Funktion ausgeben zu lassen. Wir könnten jetzt z.B. innerhalb der Funktion (also innerhalb der geschweiften Klammern) einfach die Zeile:
echo "Hello World";
einfügen und schon sieht die ganze Funktion inklusive dem Aufruf der Funktion folgendermaßen aus:
<?php function helloWorld(){ echo "Hello World"; } helloWord(); ?>
Kleine Änderungen des Scripts
Man könnte die Funktion natürlich etwas abändern, indem man einfach sagt, das nur etwas zurückgeben soll ohne den Text mit echo selbst auszugeben. Dann würde man das echo durch ein return ersetzen und damit den Inhalt "Hello World" nur zurück liefern.
Allerdings muss man dann natürlich auch daran denken das beim aufrufen der Funktion das "Hello World" noch nicht ausgegeben wird, denn das echo muss jetzt vor dem Aufrufen der Funktion stehen. Dann sieht das ganze nämlich folgendermaßen aus:
<?php function helloWorld(){ return "Hello World"; } echo helloWord(); ?>
Das war natürlich jetzt erst einmal ein ganz kleine Beispiel aber wir gehen jetzt mal einen kleinen Schritt weiter.
Parameter übergeben in PHP
Man hat natürlich die Möglichkeit einer Funktion Werte zu übergeben. In unserem Beispiel haben wir die Funktion ja nur aufgerufen aber vielleicht wollen wir ja mal eine Zahl oder z.B. Text übergeben. Das werden wir jetzt einfach mal machen.
Parameter werden einfach innerhalb der Klammern mit übergeben. Wenn man mehrere Parameter übergeben möchte kann man das machen indem man diese einfach durch ein Komma von einander trennt. Das gilt einerseits für die Funktion selbst aber auch für das Aufrufen der Funktion. Nehmen wir mal an wir wollen der Funktion einen Text und eine Zahl übergeben, dann würde der Aufruf der Funktion folgendermaßen aussehen. Achtet darauf das Text in Anführungszeichen übergeben werden müssen oder halt als Variable, Zahlen können so übergeben werden.
helloWorld("Hi", 1);
Jetzt müssen wir natürlich noch ein paar Anpassungen vornehmen. Die empfangenen Parameter werden als Variable definiert, das heißt das wir beim Aufrufen und der Übergabe der Parameter, diese jetzt in den Variablen vorfinden. Das bedeutet das $text jetzt den Inhalt "Hi" hat und $zahl enthält die 1:
<?php function helloWorld($text,$zahl){ echo $text." World Nr.: $zahl"; } helloWorld("Hi", 1); ?>
Also Ausgabe erscheint jetzt:
Hi World Nr.: 1
Ihr habt gesehen das es total einfach ist eine Funktion zu schreiben und selbst das mit den Parametern ist relativ einfach.
Ich kann Euch nur sagen das es unheimlich viel Spaß macht Programme zu schreiben und das man regelrecht süchtig danach werden kann. Das hängt einerseits damit zusammen das man jedesmal ein Glücksgefühl bekommt, wenn Programme schnell genau so laufen wie man das möchte, aber gleichzeitig ist es so, dass man beim schreiben auf immer wieder neue Ideen kommt die man umsetzen möchte.
Was wäre der nächste Schritt?
Das nächste was Ihr lernen könntet wäre das Thema mit Klassen. Das ist ebenfalls ein unheimlich spannendes Thema und wer einmal angefangen hat Klassen zu programmieren wird damit sicherlich nicht so schnell wieder aufhören.
Viel Spaß beim ausprobieren 😉