Maison  >  Article  >  développement back-end  >  Analyse détaillée de la différence entre les variables globales PHP et les variables super globales

Analyse détaillée de la différence entre les variables globales PHP et les variables super globales

墨辰丷
墨辰丷original
2018-06-04 10:44:071445parcourir

Cet article présente principalement la différence entre les variables globales PHP et les variables super globales. Une analyse plus détaillée décrit les concepts, l'utilisation et les différences des variables globales PHP et des variables super globales. Les amis dans le besoin peuvent s'y référer

Les variables globales sont des variables définies en dehors de la fonction. Ne peut pas être utilisé directement dans les fonctions. Parce que sa portée ne va pas à l’intérieur de la fonction. Ainsi, lorsqu'elle est utilisée dans une fonction, nous voyons souvent quelque chose comme global $a;


La portée de la variable super globale est valide dans tous les scripts. La fonction peut donc être utilisée directement. Par exemple, $_GET et $_SERVER sont des variables super globales. Les variables superglobales autres que $_GET, $_POST, $_SERVER, $_COOKIE, etc. sont stockées dans le tableau $GLOBALS.

Remarque, n'écrivez pas par erreur $_GLOBALS. Un peu affecté par $_POST.

$GLOBAL est un tableau personnalisé PHP spécial. Variables super globales. Comme $_SERVER, ce sont toutes des variables super-globales.

Recherchez $GLOBALS dans le manuel pour connaître les instructions spécifiques et l'utilisation des variables superglobales

Le nom de la variable est l'index du tableau. Description : Après avoir utilisé $GLOBALS['a'] pour définir une super variable globale. Vous pouvez utiliser $a pour accéder directement à

comme expliqué dans le manuel :

$GLOBALS — Fait référence à toutes les variables disponibles dans la portée globale Référence à toutes dans la portée globale Les variables disponibles dans la portée

peuvent être comprises avec des exemples : Supposons qu'une variable $a soit définie en dehors de la fonction. Ensuite, vous pouvez utiliser $GLOBALS['a'] pour obtenir la valeur de cette variable dans la fonction. Par conséquent, à l'intérieur du tableau $GLOBALS se trouvent : toutes les variables globales définies par l'utilisateur.

Pourquoi est-ce appelé une variable super globale. Par rapport à $_POST, il peut être utilisé directement dans la fonction. Il n’est pas du tout nécessaire d’utiliser l’instruction globale. Donc $GLOBALS a le même principe, sauf que $_POST enregistre les variables passées dans la méthode post. $GLOBALS stocke les variables globales définies par l'utilisateur.

Compréhension personnelle :

La compréhension précédente des variables super globales était incorrecte : les variables super globales sont valables dans tous les scripts. Cette déclaration a conduit à de subtiles déviations dans la compréhension. Si cela est valable sous tous les scripts, est-il vrai que les variables super globales enregistrées par $GLOBALS peuvent être obtenues dans un autre fichier après avoir été définies dans un fichier php.

Évidemment, ce ne sera pas le cas. Il est probablement affecté par $_POST, car il semble accessible à tous. Je n'avais pas réalisé que vous ne pouvez accéder qu'aux données $_POST actuellement traitées. Il est impossible que deux personnes soumettent des messages en même temps. Comment distinguer les données de publication obtenues à partir du fichier php. Ces données ne peuvent appartenir qu'au thread actuel. Enfin, les variables super globales peuvent être vues de cette façon car elles sont relatives aux variables globales. Un niveau au-dessus des variables globales, les variables globales ne peuvent pas être utilisées dans les fonctions. Cela résout le problème. Dans d'autres langages, les variables globales peuvent être utilisées dans les fonctions. Ce n'est pas le cas de la conception du langage PHP.

Les variables globales sont utilisées directement dans la fonction, vous devez donc fournir une variable qui peut être utilisée directement. Voici le concept de variables super globales.

Résumé : Ce qui précède représente l'intégralité du contenu de cet article, j'espère qu'il sera utile à l'étude de chacun.

Recommandations associées :

phpComment obtenir N nombres aléatoires non répétitifs dans une certaine plage

phpComment utiliser la fonction number_format pour intercepter les décimales et les exemples d'analyse

php est sujet à confusion sur la longueur calculs Une analyse simple du problème

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