Geltungsbereich

Aus php bar

Wechseln zu: Navigation, Suche

Der Geltungsbereich, im Englischen scope genannt, bezeichnet den Bereich in einem PHP-Script, in dem bestimmte Variablen zur Verfügung stehen. Jede Funktion bzw. Methode bildet einen solchen Geltungsbereich. Variablen die in so einen Geltungsbereich definiert wurden sind nur in diesem Geltungsbereich vorhanden.

1 function setze()
2 {
3     $var = 20;
4 }
5 
6 // Variable setzen
7 setze();
8 // Variable ausgeben
9 echo $var;


Hier wird das Script in Zeile 9 einen Fehler ausgeben, dass die angegeben Variable $var nicht vorhanden ist. Die Variable $var aus der Funktion ist nur innerhalb dieser Funktion verfügbar.

Ergebnis:

 // NOTICE: undefined variable $var on line 9

Dabei ist zu beachten das der Haupteil eines Scriptes, also alles das was nicht innerhalb definierter Funktionen oder Klassen steht, ebenfalls einen eigenen Geltungsbereich darstellt. Dieser Bereich wird auch als main() bezeichnet.

Um Variablen außerhalb ihres Geltunsgbereichs verfügbar zu machen muss man sie mit dem Schlüsselwort global verfügbar machen.

 function setze()
 {
     global $var;
     $var = 20;
 }
 
 // Variable setzen
 setze();
 // Variable ausgeben
10 echo $var;


Ergebnis:

20

Außerdem gibt es so genannte Superglobale Variablen, welche automatisch in jedem Geltungsbereich verfügbar sind. Das selbe gilt auch für Konstanten und für Funktionen und Klassen sowieso.

Siehe auch

Links

Persönliche Werkzeuge