Maison >développement back-end >Problème PHP >Que sont les variables globales dans l'apprentissage des variables PHP ? Comment appeler une fonction

Que sont les variables globales dans l'apprentissage des variables PHP ? Comment appeler une fonction

青灯夜游
青灯夜游original
2021-08-09 15:34:134734parcourir

Dans l'article précédent "Comment définir dynamiquement des noms de variables en PHP", nous avons présenté les variables variables en PHP et appris à définir dynamiquement des noms de variables. Cette fois, nous allons examiner la méthode d'appel de variables globales à l'intérieur d'une fonction. Vous pouvez vous y référer si nécessaire.

Avant de présenter la méthode d'appel de variables globales à l'intérieur d'une fonction, découvrons la portée des variables et les variables globales.

La portée de la variable, en termes simples, est la plage dans laquelle une variable peut être utilisée. Elle doit être utilisée dans sa plage effective. Si elle dépasse la plage effective, la variable perdra son sens.

Selon la portée, les variables peuvent être divisées en variables locales et variables globales.

Les variables locales font référence aux variables déclarées à l'intérieur de la fonction et ne peuvent être utilisées que dans la fonction ; tandis que les variables globales font référence aux variables déclarées en dehors de la fonction. Leur portée est n'importe où dans le code source actuel, mais elles ne sont pas disponibles dans la fonction. .

<?php
$a = 1;
$b = 2;
$c = 3;
function demo(){
    echo &#39;$a = &#39;.$a;
	echo &#39;<br>$b = &#39;.$b;
	echo &#39;<br>$c = &#39;.$c;
}
demo();
?>

Analyse : Si vous souhaitez afficher les variables globales $a, $b, $c dans la fonction demo(), vous constaterez qu'elles ne sont pas affichées et une erreur est signalée :

Que sont les variables globales dans lapprentissage des variables PHP ? Comment appeler une fonction

Mais parfois nous devons utiliser des variables globales dans la fonction, que devons-nous faire ?

PHP propose deux solutions : le mot-clé global et la super variable globale $GLOBALS. global关键字和$GLOBALS超全局变量。

我们看看下面的一个示例:

<?php
$a = 1;
$b = 2;
$c = 3;
function demo(){
	global $a,$b,$c;
    echo &#39;$a = &#39;.$a;
    echo &#39;<br>$b = &#39;.$b;
    echo &#39;<br>$c = &#39;.$c;
}
demo();
?>

看看输出结果为:

$a = 1
$b = 2
$c = 3

分析:

global关键字的作用是:导入全局变量,利用global 变量1, 变量2, ...的形式把全局变量1, 变量2...导入到一个函数的局部范围内,就可以在函数内部使用在函数外部定义的全局变量了。

再来看一个例子:

<?php
$a = 1;
$b = 2;
$c = 3;
function demo(){
    echo &#39;$a = &#39;.$GLOBALS[&#39;a&#39;];
    echo &#39;<br>$b = &#39;.$GLOBALS[&#39;b&#39;];
    echo &#39;<br>$c = &#39;.$GLOBALS[&#39;c&#39;];
}
demo();
?>

输出结果为:

$a = 1
$b = 2
$c = 3

分析:

$GLOBALS是一种预定义变量(又叫超全局变量),是包含所有变量的全局组合数组,变量的名称就是数组的键,可以使用$GLOBALS['变量名']的形式来访问指定全局变量。只要是出现过的全局变量,就可以通过$GLOBALS

Regardons l'exemple suivant :

rrreeeRegardez le résultat de sortie :

rrreee
    Analyse :
  • La fonction du mot-clé global est : importer des variables globales, utiliser variable globale 1, variable 2 , .. importez variable globale 1, variable 2... dans la portée locale d'une fonction, et les variables globales définies en dehors de la fonction peuvent être utilisées à l'intérieur de la fonction.

  • Regardons un autre exemple :
  • rrreee

    Le résultat de sortie est :

    rrreee

    Analyse :

    $GLOBALS est une sorte de variable prédéfinie (également appelée variable super globale), qui contient tous variables Tableau combiné global, le nom de la variable est la clé du tableau, vous pouvez utiliser la forme $GLOBALS['variable name'] pour accéder à la variable globale spécifiée. Tant qu'il s'agit d'une variable globale qui est apparue, elle peut être obtenue via le tableau $GLOBALS.

  • La différence entre global et $GLOBALS

global ne peut être utilisée qu'à l'intérieur d'une fonction, pas à l'extérieur de la fonction ; tandis que $GLOBALS peut être utilisé n'importe où dans le programme (à l'intérieur et à l'extérieur de la fonction).

Lorsqu'une variable modifiée avec le mot-clé global est détruite à l'intérieur d'une fonction, les variables en dehors de la fonction ne sont pas affectées tandis que $GLOBALS est affecté. 🎜🎜Raison : 🎜🎜Lors de l'utilisation du mot-clé global pour modifier la variable $var, il s'agit d'une référence à la variable du même nom en dehors de la fonction. L'intérieur et l'extérieur sont deux variables qui ne s'affectent pas 🎜🎜Et ; $GLOBALS['var'] fait référence à la fonction La variable externe elle-même est une variable. 🎜🎜🎜🎜D'accord, c'est tout. Si vous voulez savoir autre chose, vous pouvez cliquer ici. → →🎜Tutoriel vidéo php🎜🎜🎜Enfin, je vous recommande un tutoriel vidéo gratuit sur les tableaux PHP : 🎜Entrez dans le monde de PHP à partir de 0🎜, venez apprendre ! 🎜

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!

Déclaration:
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