Geltungsbereich von Variablen I (scope)

 

 



Geltungsbereich von Variablen (scope)

Variablen, die zB innerhalb von Funktionen erzeugt werden, haben nur in dieser Funktion Gültigkeit und können nicht außerhalb dieser Funktion mit dem Wert angesprochen werden.


function test()
{
    
$i 1;
    echo 
"i in der Funktion, definiert als: ";
    echo 
$i "<br>";
}
echo 
"i ist hier nicht definiert: ";
echo 
$i "<br>";
$i 99;
test();
echo 
"i außerhalb der Funktion, definiert als: " $i;

 

 

Hieraus ist ersichtlich, dass die Variable $i innerhalb der Funktion eine andere ist als außerhalb.

 

Ebenso kann man in der Funktion nicht ohne Weiteres auf Variablen zugreifen, die außerhalb der Funktion definiert wurden. Über das Statement “global” in der Funktion ist es allerdings möglich:

$i 99;
test();

function test()
{
    global 
$i;
    echo 
"i in der Funktion, definiert als: ";
    echo 
$i "<br>";
}

echo 
"i außerhalb der Funktion, definiert als: " $i;

 

Wird die Variable innerhalb der Funktion geändert, ändert sich ihr Wert gleichzeitig auch außerhalb der Funktion! Globale Variablen sind mit Vorsicht einzusetzen und meist besser zu vermeiden.

 

 

 

 

 

Ergänzende und vertiefende Module