Heim >Backend-Entwicklung >PHP-Tutorial >Wie kann ich in PHP-Funktionen auf globale Variablen zugreifen?

Wie kann ich in PHP-Funktionen auf globale Variablen zugreifen?

Barbara Streisand
Barbara StreisandOriginal
2024-12-18 18:53:13577Durchsuche

How Can I Access Global Variables within PHP Functions?

Zugriff auf globale Variablen innerhalb von Funktionen

In PHP stellt der Zugriff auf globale Variablen innerhalb von Funktionen bestimmte Herausforderungen dar. Betrachten Sie den folgenden Code:

<br>$sxml = new SimpleXMLElement('<somexml/>');</p>
<p>Funktion foo(){</p>
<pre class="brush:php;toolbar:false">$child = $sxml->addChild('child');

}

foo();

Dieser Code versucht, von innen auf die globale Variable $sxml zuzugreifen die Funktion foo(), aber sie schlägt fehl. Funktionen in PHP haben ihren eigenen lokalen Gültigkeitsbereich und können standardmäßig nicht auf Variablen aus dem globalen Gültigkeitsbereich zugreifen.

Um auf eine globale Variable innerhalb einer Funktion zuzugreifen, gibt es mehrere Möglichkeiten:

  1. Übergeben Sie die globale Variable als Argument:
    Sie können die globale Variable als Argument an die Funktion übergeben, um ihr den Zugriff zu ermöglichen it.

    function foo($sxml){
        $child = $sxml->addChild('child');
    }
    
    foo($sxml);
  2. Deklarieren Sie die globale Variable als globale Variable:
    Sie können die globale Variable als globale Variable innerhalb der Funktion deklarieren, indem Sie die verwenden globales Schlüsselwort.

    function foo(){
        global $sxml;
        $child = $sxml->addChild('child');
    }
    
    foo();
  3. Verwendung Abschlüsse:
    Abschlüsse in PHP ermöglichen den Zugriff auf äußere Variablen innerhalb einer Funktion.

    function foo() use (&$sxml) {
        $child = $sxml->addChild('child');
    }
    
    foo();

Das obige ist der detaillierte Inhalt vonWie kann ich in PHP-Funktionen auf globale Variablen zugreifen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn