Hauptmenü

Untermenü

PHP - Grundlagen - Funktionen

1. Einführung

Funktionen sind einfach ausgedrückt, autonome Abschnitte innerhalb des Quellcodes, die explizit an anderer Stelle aufgerufen werden müssen. Sie werden vor allem dann eingesetzt, wenn bestimmte Aufgaben immer wieder ausgeführt werden sollen, aber jedes Mal mit anderen Werten. Ihre Syntax ist sehr einfach.


function Funktionsname (optionale Variablen)
{
  Anweisungen
}

2. Funktionsweise

Nehmen wir mal ein einfaches Beispiel für den Einsatz und die Arbeitsweise von Funktionen. Wir haben einen Online-Shop, wo wir den Bruttopreis einer Bestellung ausrechnen wollen. Dazu brauchen wir eine Variable für den Nettopreis und die Menge sowie eine Funktion, die den Bruttopreis zurück liefert.


<?php
  function getBrutto ($preis$menge)
  {
    $brutto = ($preis + ($preis 0.19)) * $menge;
    return $brutto;
  }
?>

Wichtig ist das Wörtchen return, das gibt nämlich das Ergebnis der Berechnung zurück. Und beendet, wie schon bei den Schleifen gesagt, den folgenden Code. Nun kann die Funktion zum Beispiel so aufgerufen werden.


<?php
  $gesamtpreis getBrutto (25.9510);
?>

Ach ja, noch zwei Hinweise zu return. Erstens, man kann nur einen(!) Wert zurückgeben. Sei es ein true/false, eine Variable oder ein Array. Zwei sind nicht möglich. Warum? Weil jeglicher weiterer Code danach nicht mehr ausgeführt wird. Darum sollte ein return normalerweise auch immer am Ende eines Funktionsblocks stehen. Es gibt auch andere Möglichkeiten, aber darauf werde ich später in den Tutorials hin.

3. Ein Beispiel

Das Prinzip zeige ich euch mal an einem ziemlich sinnfreien Code. Wir durchlaufen in einer Funktion eine Schleife von 0 bis 100. Wenn der übergebene Parameter mit dem aktuellen Wert übereinstimmt, setzen wir ein return true;.


<?php
  function getValue($value)
  {
    for ($i 0$i 100$i++)
    {
      echo $i.'<br>';
      if ($value == $i)
      {
        return true;
      }
    }
  }  
  getValue (12);
?>

Probiert es mal aus. Die Schleife wird nur bis zum Wert 12 ausgeführt und danach inklusive Funktion beendet. Ein zusätzliches break ist hier also nicht notwendig.

zurück zum vorherigen Abschnitt weiter zum nächsten Abschnitt