SELFPHP

SELFPHP-Druckversion
Original Adresse dieser Seite:
http://www.selfphp.de/praxisbuch/praxisbuch.php?group=26
© 2001-2017 E-Mail SELFPHP OHG, info@selfphp.de
© 2005-2017 E-Mail PHP5 Praxisbuch - Matthias Kannengiesser, m.kannengiesser@selfphp.de


Funktionen und Prozeduren


Funktionen dienen dem Zusammenfassen mehrerer Befehle zu einem Aufruf. Dadurch werden Programme lesbarer, weil klar ist, wozu ein Befehlsblock dient. Bei einigen Programmiersprachen findet eine Unterscheidung zwischen Funktionen statt, die einen Wert zurückgeben, und solchen, die keinen Wert zurückgeben. In Pascal/Delphi etwa gibt es neben Funktionen, die einen Wert zurückgeben, die Prozeduren, die keinen Wert zurückgeben. PHP macht hier, genau wie C und C++, keinen Unterschied.


Definition

function meineFunk($arg_1, $arg_2, ..., $arg_n) {
  Anweisung/en;
  return $retval;
}

Der Funktion werden die Argumente Arg 1 bis Arg n übergeben und sie gibt den Wert der Variablen retval zurück. Wird kein return in der Funktion benutzt, hat man dasselbe Verhalten wie bei einer Prozedur in Pascal/Delphi. Rückgabewerte müssen, im Gegensatz zu Pascal/Delphi, nicht abgefragt werden.

Beispiel

function quadratSumme($num) {
  return $num * $num ;
}
echo quadratSumme(4); // Ergebnis: 16


return

Der Befehl return enthält als Parameter den Rückgabewert. Dies kann ein Ausdruck oder eine einzelne Variable sein. An welcher Stelle innerhalb der Funktion Sie return einsetzen, spielt keine Rolle. Auch die mehrfache Notation ist zulässig – hier wird nach dem Motto »Wer zuerst kommt, malt zu erst« verfahren und die Funktion wird sofort verlassen. Aus Gründen sauberer Programmierung sollten Sie jedoch return nur einmal an Ende einer Funktion einsetzen.


Späte Bindung in PHP

Seit PHP 4 können Sie eine Funktion an jeder beliebigen Stelle Ihres Skripts definieren. Der PHP-Interpreter verarbeitet als Erstes sämtliche Funktionsdefinitionen und anschließend die anderen Bestandteile des Skripts.