PHP - Gültigkeit von Variablen (Scope): Unterschied zwischen den Versionen

Aus Wikizone
Wechseln zu: Navigation, Suche
(Die Seite wurde neu angelegt: „ <pre> <?php $a = 1; include "b.inc"; // $a ist in der Datei b.inc Verfügbar ?> </pre> <pre> <?php $a = 1; // globaler Bereich function test () { echo $a…“)
 
 
(2 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
 +
 +
== Gültigkeit bei Includes ==
 +
  
 
<pre>
 
<pre>
Zeile 8: Zeile 11:
 
</pre>
 
</pre>
  
 +
 +
== Globale und Lokale Gültigkeit ==
  
 
<pre>
 
<pre>
Zeile 20: Zeile 25:
 
?>
 
?>
 
</pre>
 
</pre>
 +
 +
 +
== Lokal verfügbar machen mit Schlüsselwort global ==
  
 
<pre>
 
<pre>
Zeile 34: Zeile 42:
 
</pre>
 
</pre>
  
Zugriff mit $GLOBALS
+
 
 +
== Zugriff mit der Superglobalen Variable $GLOBALS ==
 +
 
  
 
<pre>
 
<pre>
Zeile 50: Zeile 60:
 
?>
 
?>
  
 +
</pre>
 +
 +
 +
== Statische Variablen ==
 +
 +
 +
Werte aus Funktionen verfügbar machen mit Schlüsselwort static. Static erhöht die Lebensdauer der Variablen über die Funktion hinaus. Das ist nützlich bei rekursiven Funktionen (Funktionen die sich selbst aufrufen).
 +
 +
Im Beispiel wird zaehler verwendet um den rekursiven Aufruf zu unterbrechen.
 +
 +
<pre>
 +
<?php
 +
function Test()
 +
{
 +
    static $zaehler = 0;
 +
 +
    $zaehler++;
 +
    echo $zaehler;
 +
    if ($zaehler < 10) {
 +
        Test ();
 +
    }
 +
    $zaehler--;
 +
}
 +
?>
 
</pre>
 
</pre>

Aktuelle Version vom 13. August 2013, 16:06 Uhr

Gültigkeit bei Includes[Bearbeiten]

<?php
$a = 1;
include "b.inc";
// $a ist in der Datei b.inc Verfügbar
?>


Globale und Lokale Gültigkeit[Bearbeiten]

<?php
$a = 1; // globaler Bereich

function test () { 
    echo $a; // $a hat keinen Wert, sie bezieht sich auf den Bereich der Funktion
} 

test ();
?>


Lokal verfügbar machen mit Schlüsselwort global[Bearbeiten]

<?php
$a = 1; // globaler Bereich

function test () {
    global $a; 
    echo $a; // $a hat keinen Wert, sie bezieht sich auf den Bereich der Funktion
} 

test ();
?>


Zugriff mit der Superglobalen Variable $GLOBALS[Bearbeiten]

<?php
$a = 1;
$b = 2;

function Summe()
{
    $GLOBALS["b"] = $GLOBALS["a"] + $GLOBALS["b"];
} 

Summe();
echo $b;
?>


Statische Variablen[Bearbeiten]

Werte aus Funktionen verfügbar machen mit Schlüsselwort static. Static erhöht die Lebensdauer der Variablen über die Funktion hinaus. Das ist nützlich bei rekursiven Funktionen (Funktionen die sich selbst aufrufen).

Im Beispiel wird zaehler verwendet um den rekursiven Aufruf zu unterbrechen.

<?php
function Test()
{
    static $zaehler = 0;

    $zaehler++;
    echo $zaehler;
    if ($zaehler < 10) {
        Test ();
    }
    $zaehler--;
}
?>