Zum Beispiel:
Code kopieren Der Code lautet wie folgt:
$a = 1;
include 'b.inc';
Diese Variable $a wird in der Include-Datei b.inc wirksam. In benutzerdefinierten Funktionen wird jedoch ein lokaler Funktionsumfang eingeführt. Alle innerhalb einer Funktion verwendeten Variablen sind standardmäßig auf den Bereich der lokalen Funktion beschränkt und sind zu diesem Zeitpunkt lokale Variablen.
Globale Variablen in PHP müssen als global deklariert werden, wenn sie in Funktionen verwendet werden.
Mit global in einer Funktion deklarierte Variablen sind globale Variablen und können außerhalb der Funktion verwendet werden. Hinweis: Wenn Sie eine Variable global deklarieren, können Sie der Variablen keinen direkten Wert zuweisen. Sie müssen sie zuerst deklarieren und dann einen Wert zuweisen.
Im globalen Bereich kann auch über $GLOBALS auf globale Variablen zugegriffen werden. Es ist nicht erforderlich, das Schlüsselwort global zu verwenden, um auf globale Variablen innerhalb einer Funktion zuzugreifen. $GLOBALS ist ein assoziatives Array, jede Variable ist ein Element, der Schlüsselname entspricht dem Variablennamen und der Wert entspricht dem Inhalt der Variablen. $GLOBALS existiert im globalen Bereich, da $GLOBALS eine superglobale Variable ist.
Konstanten können überall definiert und abgerufen werden, unabhängig vom Gültigkeitsbereich der Variablen
Ein weiteres wichtiges Merkmal des Variablenbereichs sind statische Variablen. Statische Variablen existieren nur im lokalen Funktionsbereich, ihre Werte gehen jedoch nicht verloren, wenn die Programmausführung diesen Bereich verlässt. Statische Variablen werden nur beim ersten Aufruf initialisiert. Ihnen können bei der Deklaration Werte zugewiesen werden, sie können jedoch keine Ausdruckswerte sein. Die Zuweisung des Ergebnisses eines Ausdrucks in einer Deklaration führt zu einem Analysefehler.
Wenn eine Referenz (eine Variable oder ein Objekt mit &) einer statischen Variablen zugewiesen wird, wird die Referenz nicht statisch gespeichert und der Wert der statischen Variablen wird nicht gespeichert, wenn die Funktion zum zweiten Mal aufgerufen wird . Wenn einer globalen Variablen eine Referenz (Variable oder Objekt mit &) zugewiesen wird, hat die Änderung dieser Variablen keine Auswirkungen außerhalb der Funktion und der Gültigkeitsbereich liegt nur innerhalb der Funktion.