Maison > développement back-end > tutoriel php > Comment puis-je accéder aux variables globales dans les fonctions PHP ?

Comment puis-je accéder aux variables globales dans les fonctions PHP ?

Barbara Streisand
Libérer: 2024-12-18 18:53:13
original
574 Les gens l'ont consulté

How Can I Access Global Variables within PHP Functions?

Accès aux variables globales dans les fonctions

En PHP, l'accès aux variables globales dans les fonctions présente certains défis. Considérons le code suivant :

<br>$sxml = new SimpleXMLElement('<somexml/>');</p>
<p>function foo(){</p>
<div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false">$child = $sxml->addChild('child');
Copier après la connexion

}

foo();

Ce code tente d'accéder à la variable globale $sxml depuis l'intérieur la fonction foo(), mais elle échoue. Les fonctions en PHP ont leur propre portée locale et ne peuvent pas accéder aux variables de la portée globale par défaut.

Pour accéder à une variable globale au sein d'une fonction, il existe plusieurs options :

  1. Passer la variable globale comme argument :
    Vous pouvez transmettre la variable globale comme argument à la fonction, lui permettant d'accéder it.

    function foo($sxml){
        $child = $sxml->addChild('child');
    }
    
    foo($sxml);
    Copier après la connexion
  2. Déclarer la variable globale en tant que variable globale :
    Vous pouvez déclarer la variable globale en tant que variable globale dans la fonction en utilisant le mot clé global.

    function foo(){
        global $sxml;
        $child = $sxml->addChild('child');
    }
    
    foo();
    Copier après la connexion
  3. Utiliser Fermetures :
    Les fermetures en PHP vous permettent d'accéder aux variables externes au sein d'une fonction.

    function foo() use (&$sxml) {
        $child = $sxml->addChild('child');
    }
    
    foo();
    Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Recommandations populaires
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal