Globale Variablen und das Schlüsselwort „global“
PHP definiert standardmäßig einige „Superglobals“-Variablen und kann überall im -Programm aufgerufen werden _REQUEST usw. Sie stammen in der Regel aus Daten oder anderen externen Daten und die Verwendung dieser Variablen bereitet in der Regel keine Probleme, da sie grundsätzlich nicht beschreibbar sind. Aber Sie können Ihre eigenen globalen Variablen verwenden. Mit dem Schlüsselwort „global“ können Sie globale Daten in den lokalen Bereich einer -Funktion importieren. Wenn Sie den „variablen Nutzungsumfang“ nicht verstehen, lesen Sie bitte selbst die entsprechenden Anweisungen im PHP-Handbuch. Hier ist ein Demonstrationsbeispiel mit dem Schlüsselwort „global“:
Wie Sie im obigen Beispiel sehen können, wird das Schlüsselwort „global“ zum Importieren globaler Variablen verwendet . Es scheint<?php $my_var = 'Hello World'; test_global(); function test_global() { // Now in local scope // the $my_var variable doesn't exist // Produces error: "Undefined variable: my_var" echo $my_var; // Now let's important the variable global $my_var; // Works: echo $my_var; } ?>
Lassen Sie mich denjenigen, die neu in der Branche sind, die Verwendung globaler Variablen erklären, „globale Variablen“. Die beiden Wörter global in diesem Substantiv haben uns gesagt, dass diese Variable wird in verschiedenen Bereichen verwendet. Es kann überall verwendet werden. Schauen wir uns zunächst ein Beispiel an:
Ergebnis: 3<?php $a = 1; $b = 2; function Sum() { global $a, $b; //在里面声明为全局变量 $b = $a + $b; } Sum(); echo $b; ?>
Wenn es keine globale Variable global gibt, sind die Werte von $a und $b können in der Methode nicht abgerufen werden. Wenn Sie also in der Methode eine externe Variable verwenden möchten, müssen Sie
die Variable zuerst als globale Variable deklarieren, damit sie verwendet werden kann sehr praktisch.Die Ausgabe des obigen Skripts ist „3“. In der Funktion werden die globalen Variablen $w3sky und $w3sky2 deklariert, und alle
<?PHP $w3sky = 1; $w3sky2 = 2; function Sum() { global $w3sky, $w3sky2;$w3sky2 = $w3sky + $w3sky2; }Sum(); echo $w3sky2; ?>
Die zweite Möglichkeit, auf Variablen im globalen Bereich zuzugreifen, ist die Verwendung eines speziellen PHP-benutzerdefinierten $GLOBALS-Arrays. Das vorherige Beispiel kann wie folgt geschrieben werden:
Das Beispiel verwendet $GLOBALS anstelle von globalIm $GLOBALS-Array ist jede Variable eine Element, Schlüssel Der Name entspricht dem
Variablennamenund der Wert entspricht dem Inhalt der Variablen
. $GLOBALS existiert im globalen Bereich, da $GLOBALS eine<?PHP $w3sky = 1; $w3sky2 = 2;function Sum() { $GLOBALS['w3sky'] = $GLOBALS['w3sky'] + $GLOBALS['w3sky2']; }Sum(); echo $w3sky2; ?>
ist. Das folgende Beispiel zeigt die Verwendung superglobaler Variablen: Beispiel zur Demonstration superglobaler Variablen und Bereichsbeispieleglobal Das heißt, solange Sie globale $db deklarieren In einer Datei können Sie diese $db unterhalb der Deklaration referenzieren
Ausgabe:<?PHP function test_global() { // 大多数的预定义变量并不 "super",它们需要用 'global' 关键字来使它们在函 数的本地区域中有效。 global $HTTP_POST_VARS;echo $HTTP_POST_VARS['name'];// Superglobals 在任何 范围内都有效,它们并不需要 'global' 声明。Superglobals 是在 PHP 4.1.0 引入的。 echo $_POST['name']; } ?>
Aufgrund der globalen Deklaration von Variablen, Es gibt jetzt nur noch eine $count-Variable, die sowohl innerhalb als auch außerhalb der Funktion erhöht wird. Wenn
SayMyABCs2() zum zweiten Mal aufruft, ist $count bereits 11, also gibt es keine Wird nicht in die Schleife zum Drucken von Buchstaben eingegeben . Der Umfang der in der Funktion<?php function SayMyABCs2() { global $count; while($count<10) { print(chr(ord('A')+$count)); $count=$count+1; } print("<br>Now I know $count letters<br>"); } $count=0; SayMyABCs2(); $count=$count+1; print("Now I've made $count function call(s).<br>"); SayMyABCs2(); $count=$count+1; print("Now I've made $count function call(s).<br>"); ?>
definierten Variablen
ist standardmäßig auf die Funktion beschränkt. Mithilfe der globalen Deklaration können Sie PHP darüber informieren, dass
ABCDEFGHIJ //第一次循环依次打印10个大写字母 Now I know 10 letters Now I've made 11 function call(s). //第二次由于条件大于10则不执行循环 Now I know 11 letters Now I've made 12 function call(s).
$count1,$count2,...,$countn;global ist dagegen nützlich, insbesondere weil PHP einige Variablen bereitstellt, die in The verwendet werden können Der Code wird vor der Ausführung an jede -Seite gebunden. Dadurch kann die Funktion diese Variablen sehen, sodass sie nicht bei jedem Aufruf als Parameter übergeben werden müssen. Problem
Das obige ist der detaillierte Inhalt vonSo verwenden Sie globale globale PHP-Variablen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!