Funktionen

Funktionen sind dafür da, Programmlogik zu bündeln, die man immer wieder braucht. Dadurch vermeidet man Redundanz, somit auch Fehlerquellen und muss bei einer Änderung nur an einer Stelle eingreifen. Der Aufbau einer Funktion sieht so aus:

<?php
	function NAME_DER_FUNKTION (parameter1, parameter2, ...)
	{
		//auszuführender Code
	}
?>

Nun wollen wir mit einer Funktion zwei Zahlen addieren und die Rechnung + Ergebnis ausgeben:

<?php
	function addieren($zahl1, $zahl2)
	{
		echo $zahl1.' + '.$zahl2.' = '.($zahl1+$zahl2).'<br />';
	}
	
	addieren(5, 10);
?>

Unsere Funktion nennen wir sinngemäß „addieren“ und erwarten zwei Parameter, „$zahl1“ und „$zahl2“. Parameter sind Möglichkeiten, Werte an unsere Funktion zu übergeben. Man kann auch Funktionen programmieren, die keinen Parameter erwarten (leere Klammer), aber da wir hier zwei Zahlen addieren wollen, brauchen wir zwei Parameter.

Der Code innerhalb der Funktion sollte selbsterklärend sein.
Nun können wir beliebige Zahlen miteinander addieren und zudem so häufig wir wollen:

<?php
	function addieren($zahl1, $zahl2)
	{
		echo $zahl1.' + '.$zahl2.' = '.($zahl1+$zahl2).'<br />';
	}
	
	addieren(5, 10);
	echo '<br />';
	addieren(2732, 19883);
	echo '<br />';
	addieren(1, 1);
	echo '<br />';
	
	for($i=1; $i < 30; $i++) 
	{
		addieren($i, $i*10);
		echo '<br />';
	}	
?>

Ergebnis:

Wert mit return zurückgeben

Häufig möchte man, dass die Funktion einen Wert zurückgibt, also zuerst wird etwas berechnet und abhängig vom Ergebnis dieser Berechnung, gibt die Funktion einen Wert zurück. Im folgenden Beispiel möchten wir, dass unsere Funktion uns nur das Ergebnis der Addition zurückgibt:

<?php
	function addieren($zahl1, $zahl2)
	{
		$ergebnis = $zahl1 + $zahl2;
		
		return $ergebnis;
	}
	
	for($i=1; $i < 10; $i++) 
	{
		echo $i.' + '.$i.' = '.addieren($i, $i);
	}	
?>

Optionale Parameter

Manchmal möchte man eine Funktion haben, die einen optionalen Parameter beinhaltet:

<?php
	function addieren($zahl1, $zahl2=5)
	{
		echo $ergebnis = $zahl1 + $zahl2;
	}
	
	addieren(10,12);
	echo '<br />';
	addieren(10);
?>

Wenn beide Werte angegeben sind, läuft alles wie gewohnt. Wird aber nur ein Parameter befüllt, erhält der zweite Parameter automatisch den Wert „5“.

Funktionen sind ein mächtiges Werkzeug und ohne kommt man als PHP Programmierer einfach nicht aus. Da aber bestimmte Funktionen von so gut wie allen PHP Entwicklern benötigt werden, werden diese von PHP direkt zur Verfügung gestellt. Schau dir dazu den Unterartikel PHP Standard Funktionen an.

hier geht's weiter...



Kommentare


im Abschnitt: Wert mit return zurückgeben
variabele:zahl1,zahl2 sind nicht definiert,wie funktioniert das?


Oh, mein Fehler, du hast recht.
Anstelle von "zahl1" und "zahl2" muss natürlich "$i" verwendet werden, ich habe es korrigiert.

Vielen Dank für den Hinweis!


Bei "Wert mit return zurück geben" ist was vergessen worden.
for($i=1; $i < 10; $i++)
{
echo $i.' + '.$i.' = '.addieren($i, $i); <— Falsch! —> echo $i.' + '.$i.' = '.addieren($i+$i).''; <—
}

Kommentar schreiben

Kommentar

Hilfe:

<strong>fettgedruckt</strong> => fettgedruckt

<em>kursiv</em> => kursiv

<a href="http://wordpress.lernenhoch2.de">Link</a> => Link

[code]<?php echo 'hello world'; ?>[/code]

*

Feedback Formular